Message ID | 20230310192538.617109-1-philip.cox@canonical.com |
---|---|
State | New |
Headers | show |
Series | [jammy:linux-intel-iotg,1/1] Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs" | expand |
This should be sent for jammy:linux, as it fixes an issue that affects all 5.15 kernels. The broken commit is applied there, since 5.15.0-57, and has not been applied to jammy master-next branch yet. It has been picked up by upstream stable 5.15.y already. Cascardo.
diff --git a/net/sched/sch_taprio.c b/net/sched/sch_taprio.c index 708f3131e15c..2c0f0e7676ae 100644 --- a/net/sched/sch_taprio.c +++ b/net/sched/sch_taprio.c @@ -1971,14 +1971,12 @@ static int taprio_dump(struct Qdisc *sch, struct sk_buff *skb) static struct Qdisc *taprio_leaf(struct Qdisc *sch, unsigned long cl) { - struct taprio_sched *q = qdisc_priv(sch); - struct net_device *dev = qdisc_dev(sch); - unsigned int ntx = cl - 1; + struct netdev_queue *dev_queue = taprio_queue_get(sch, cl); - if (ntx >= dev->num_tx_queues) + if (!dev_queue) return NULL; - return q->qdiscs[ntx]; + return dev_queue->qdisc_sleeping; } static unsigned long taprio_find(struct Qdisc *sch, u32 classid)