aboutsummaryrefslogtreecommitdiffstats
path: root/net/core/link_watch.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/core/link_watch.c')
-rw-r--r--net/core/link_watch.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/net/core/link_watch.c b/net/core/link_watch.c
index a5e372b9ec4d..50218218445b 100644
--- a/net/core/link_watch.c
+++ b/net/core/link_watch.c
@@ -79,8 +79,10 @@ static void rfc2863_policy(struct net_device *dev)
79 79
80static int linkwatch_urgent_event(struct net_device *dev) 80static int linkwatch_urgent_event(struct net_device *dev)
81{ 81{
82 struct netdev_queue *txq = &dev->tx_queue;
83
82 return netif_running(dev) && netif_carrier_ok(dev) && 84 return netif_running(dev) && netif_carrier_ok(dev) &&
83 dev->qdisc != dev->qdisc_sleeping; 85 txq->qdisc != txq->qdisc_sleeping;
84} 86}
85 87
86 88
@@ -181,7 +183,9 @@ static void __linkwatch_run_queue(int urgent_only)
181 rfc2863_policy(dev); 183 rfc2863_policy(dev);
182 if (dev->flags & IFF_UP) { 184 if (dev->flags & IFF_UP) {
183 if (netif_carrier_ok(dev)) { 185 if (netif_carrier_ok(dev)) {
184 WARN_ON(dev->qdisc_sleeping == &noop_qdisc); 186 struct netdev_queue *txq = &dev->tx_queue;
187
188 WARN_ON(txq->qdisc_sleeping == &noop_qdisc);
185 dev_activate(dev); 189 dev_activate(dev);
186 } else 190 } else
187 dev_deactivate(dev); 191 dev_deactivate(dev);