From: Michael Ellerman Date: Thu, 12 May 2005 08:09:45 +0000 (+1000) Subject: [PATCH] iseries_veth: Cleanup skbs to prevent unregister_netdevice() hanging X-Git-Tag: v2.6.12-rc6~145^2~3^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b2e0852e1eee7c445b1789bef41204b64f981102;p=pandora-kernel.git [PATCH] iseries_veth: Cleanup skbs to prevent unregister_netdevice() hanging Hi Andrew, Jeff, The iseries_veth driver is badly behaved in that it will keep TX packets hanging around forever if they're not ACK'ed and the queue never fills up. This causes the unregister_netdevice code to wait forever when we try to take the device down, because there's still skbs around with references to our struct net_device. There's already code to cleanup any un-ACK'ed packets in veth_stop_connection() but it's being called after we unregister the net_device, which is too late. The fix is to rearrange the module exit function so that we cleanup any outstanding skbs and then unregister the driver. Signed-off-by: Michael Ellerman --- Reading git-diff-tree failed