[NETPOLL] netconsole: fix soft lockup when removing module
authorJarek Poplawski <jarkao2@o2.pl>
Fri, 29 Jun 2007 05:11:47 +0000 (22:11 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 29 Jun 2007 05:11:47 +0000 (22:11 -0700)
commit17200811cf539b9107a99a39bf71ba3567966285
tree11763c9163f8d521acc74c9b89faa0210860b2f1
parent25243633c29b72c4edd5fe9cfcbd76aa5eef8b36
[NETPOLL] netconsole: fix soft lockup when removing module

#1
Until kernel ver. 2.6.21 (including) cancel_rearming_delayed_work()
required a work function should always (unconditionally) rearm with
delay > 0 - otherwise it would endlessly loop. This patch replaces
this function with cancel_delayed_work(). Later kernel versions don't
require this, so here it's only for uniformity.

#2
After deleting a timer in cancel_[rearming_]delayed_work() there could
stay a last skb queued in npinfo->txq causing a memory leak after
kfree(npinfo).

Initial patch & testing by: Jason Wessel <jason.wessel@windriver.com>

Signed-off-by: Jarek Poplawski <jarkao2@o2.pl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/netpoll.c