pkt_sched: Fix oops in htb_delete.
Recent changes introduced a bug in htb_delete(): cl->parent->children counter update misses checking cl->parent for NULL, which is used for root classes, so deleting them causes an oops. Signed-off-by: Jarek Poplawski <jarkao2@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
64c00d81b5
commit
26b284de54
@@ -1279,7 +1279,8 @@ static int htb_delete(struct Qdisc *sch, unsigned long arg)
|
|||||||
|
|
||||||
/* delete from hash and active; remainder in destroy_class */
|
/* delete from hash and active; remainder in destroy_class */
|
||||||
qdisc_class_hash_remove(&q->clhash, &cl->common);
|
qdisc_class_hash_remove(&q->clhash, &cl->common);
|
||||||
cl->parent->children--;
|
if (cl->parent)
|
||||||
|
cl->parent->children--;
|
||||||
|
|
||||||
if (cl->prio_activity)
|
if (cl->prio_activity)
|
||||||
htb_deactivate(q, cl);
|
htb_deactivate(q, cl);
|
||||||
|
Reference in New Issue
Block a user