Hello, I'am running hfsc qdisc with huge set of rules loaded. Always when I delete the root qdisc the machine stop responding for about 5-6 seconds. As I think it's due the hfsc_destory_qdisc is executed in main kernel thread. Is there any solutions which can after completing each run in loop, put itself at the end of run queue ? hfsc_destroy_qdisc(struct Qdisc *sch) { struct hfsc_sched *q = (struct hfsc_sched *)sch->data; struct hfsc_class *cl, *next; unsigned int i; for (i = 0; i < HFSC_HSIZE; i++) { list_for_each_entry_safe(cl, next, &q->clhash[i], hlist) hfsc_destroy_class(sch, cl); } __skb_queue_purge(&q->requeue); del_timer(&q->wd_timer); MOD_DEC_USE_COUNT; } -- Tomasz Paszkowski
Attachment:
pgpvQaCKIsc3D.pgp
Description: PGP signature