netxen: fix deadlock on dev close
authorDhananjay Phadke <dhananjay@netxen.com>
Fri, 17 Jul 2009 15:27:07 +0000 (15:27 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 20 Jul 2009 15:23:31 +0000 (08:23 -0700)
commitb2af9cb06d4de1b507ec0fd779ec2ecedee1480a
tree15967d7eaee2636e6c29d15d96dd57e99c0a6ee9
parentcf981ffb31e8f41f4899a56560f81322f94f22d1
netxen: fix deadlock on dev close

netxen: fix deadlock on dev close

The tx ring accounting fix in commit cb2107be43d2fc5eadec58b92b
("netxen: fix tx ring accounting") introduced intermittent
deadlock when inteface is going down.

This was possibly combined effect of speculative tx pause,
calling netif_tx_lock instead of queue lock and unclean
synchronization with napi which could end up unmasking
interrupt.

Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/netxen/netxen_nic.h
drivers/net/netxen/netxen_nic_hw.c
drivers/net/netxen/netxen_nic_init.c
drivers/net/netxen/netxen_nic_main.c