From 5c2b4ad23a0ed61843d27459185064e3a04874b9 Mon Sep 17 00:00:00 2001 From: Jarek Poplawski Date: Thu, 5 Jul 2007 17:42:44 -0700 Subject: [PATCH] --- yaml --- r: 58244 b: refs/heads/master c: 25442cafb8cc3d979418caccabc91260707a0947 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/core/netpoll.c | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index c03738c2cfb6..358fa0869ba9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 94b83419e5b56a87410fd9c9939f0081fc155d65 +refs/heads/master: 25442cafb8cc3d979418caccabc91260707a0947 diff --git a/trunk/net/core/netpoll.c b/trunk/net/core/netpoll.c index cf40ff91ac01..a0efdd7a6b37 100644 --- a/trunk/net/core/netpoll.c +++ b/trunk/net/core/netpoll.c @@ -72,8 +72,7 @@ static void queue_process(struct work_struct *work) netif_tx_unlock(dev); local_irq_restore(flags); - if (atomic_read(&npinfo->refcnt)) - schedule_delayed_work(&npinfo->tx_work, HZ/10); + schedule_delayed_work(&npinfo->tx_work, HZ/10); return; } netif_tx_unlock(dev); @@ -786,8 +785,7 @@ void netpoll_cleanup(struct netpoll *np) if (atomic_dec_and_test(&npinfo->refcnt)) { skb_queue_purge(&npinfo->arp_tx); skb_queue_purge(&npinfo->txq); - cancel_delayed_work(&npinfo->tx_work); - flush_scheduled_work(); + cancel_rearming_delayed_work(&npinfo->tx_work); /* clean after last, unfinished work */ if (!skb_queue_empty(&npinfo->txq)) {