]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
forcedeth: fix random hang in forcedeth driver when using netconsole
authorTimo Jantunen <jeti@iki.fi>
Tue, 14 Aug 2007 18:56:57 +0000 (21:56 +0300)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 22 Aug 2007 23:23:26 +0000 (16:23 -0700)
commit108c55dda1bd750b87b5fccc9cd4658222cf2dc3
tree8a2569d5c6dbef0b5d0d93803c151e268ba4a415
parentc5039b587f162d00da5d997c9481e5c8f7acc0f3
forcedeth: fix random hang in forcedeth driver when using netconsole

If the forcedeth driver receives too much work in an interrupt, it
assumes it has a broken hardware with stuck IRQ. It works around the
problem by disabling interrupts on the nic but makes a printk while
holding device spinlog - which isn't smart thing to do if you have
netconsole on the same nic.

This patch moves the printk's out of the spinlock protected area.

Without this patch the machine hangs hard. With this patch everything
still works even when there is significant increase on CPU usage while
using the nic.

Signed-off-by: Timo Jantunen <jeti@iki.fi>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/net/forcedeth.c