diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c index 4840aff4725603295d4eef1ebca7f24cd5f9a853..83b23b55ce363e4a696a2c1f3ae8f59a089db2d2 100644 --- a/net/sched/sch_api.c +++ b/net/sched/sch_api.c @@ -792,7 +792,7 @@ qdisc_create(struct net_device *dev, struct netdev_queue *dev_queue, goto err_out3; } } - if (parent && !(sch->flags & TCQ_F_INGRESS)) + if ((parent != TC_H_ROOT) && !(sch->flags & TCQ_F_INGRESS)) list_add_tail(&sch->list, &dev_queue->qdisc->list); return sch;