--- x/net/sched/sch_sfq.c +++ y/net/sched/sch_sfq.c @@ -720,6 +720,8 @@ static void sfq_destroy(struct Qdisc *sc { struct sfq_sched_data *q = qdisc_priv(sch); + if (q->sch != sch) + return; tcf_block_put(q->block); q->perturb_period = 0; del_timer_sync(&q->perturb_timer);