From: Herbert Xu Date: Thu, 10 May 2007 21:11:16 +0000 (-0700) Subject: [NET_SCHED]: Reread dev->qdisc for NETDEV_TX_OK X-Git-Tag: v2.6.22-rc1~34^2~10 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cce1fa36a8ed36e8a3f64455e2a830f48e904c64;p=linux-2.6 [NET_SCHED]: Reread dev->qdisc for NETDEV_TX_OK Now that we return the queue length after NETDEV_TX_OK we better make sure that we have the right queue. Otherwise we can cause a stall after a really quick dev_deactive/dev_activate. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller --- diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c index 07200bfebf..816d311db4 100644 --- a/net/sched/sch_generic.c +++ b/net/sched/sch_generic.c @@ -132,6 +132,7 @@ static inline int qdisc_restart(struct net_device *dev) netif_tx_unlock(dev); } spin_lock(&dev->queue_lock); + q = dev->qdisc; goto out; } if (ret == NETDEV_TX_LOCKED && nolock) {