netconsole: take care of NETDEV_UNREGISTER event
authorBruno Prémont <bonbons@linux-vserver.org>
Wed, 29 Apr 2009 20:45:17 +0000 (20:45 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 1 May 2009 22:24:18 +0000 (15:24 -0700)
commit2382b15bcc39228572ccf1d9a1185dcabb84c833
treef24ff62a60da71984288f81ddbbc20476d18d063
parentacda074390270ca9e28f2a9729f7b835e2ad6da4
netconsole: take care of NETDEV_UNREGISTER event

When netconsole is loaded and a network interface fades away (e.g. on
rmmod $interface_driver_module) the rmmod remains stuck and some locks
are taken that prevent any additional module loading/unloading as well
as interface up/down changes.
In addition kernel logs (and console) get flooded at 10s interval with

[  122.464065] unregister_netdevice: waiting for eth0 to become free. Usage count = 1
[  132.704059] unregister_netdevice: waiting for eth0 to become free. Usage count = 1

This patch lets netconsole take NETDEV_UNREGISTER event into account
and release the affected interface if it was in use.

Signed-off-by: Bruno Prémont <bonbons@linux-vserver.org>
Acked-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/netconsole.c