Messages in this thread |  | | | Date | Mon, 2 Jul 2007 12:59:49 +0400 | | From | Oleg Nesterov <> | | Subject | Re: [PATCH] Re: [NETPOLL] netconsole: fix soft lockup when removing module |
| |
On 07/02, Jarek Poplawski wrote: > > diff -Nurp 2.6.22-rc7-/net/core/netpoll.c 2.6.22-rc7/net/core/netpoll.c > --- 2.6.22-rc7-/net/core/netpoll.c 2007-07-02 09:03:27.000000000 +0200 > +++ 2.6.22-rc7/net/core/netpoll.c 2007-07-02 09:32:34.000000000 +0200 > @@ -72,8 +72,7 @@ static void queue_process(struct work_st > 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,7 +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); > + cancel_rearming_delayed_work(&npinfo->tx_work); > flush_scheduled_work();
While you are here, could you also delete this flush_scheduled_work() ? It is not needed any longer.
Oleg.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |