]> git.baikalelectronics.ru Git - kernel.git/commit
dm9000: fix "BUG: spinlock recursion"
authorBaruch Siach <baruch@tkos.co.il>
Tue, 18 May 2010 00:45:48 +0000 (17:45 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 18 May 2010 00:45:48 +0000 (17:45 -0700)
commit49284e6a53d4617935cfc90e8d3840c7205fff66
treeddfc9380df76bfc85eee7eeb978a649a4b2383c3
parent150958214896ca6d05b9b648d4806a262427f302
dm9000: fix "BUG: spinlock recursion"

dm9000_set_rx_csum and dm9000_hash_table are called from atomic context (in
dm9000_init_dm9000), and from non-atomic context (via ethtool_ops and
net_device_ops respectively). This causes a spinlock recursion BUG. Fix this by
renaming these functions to *_unlocked for the atomic context, and make the
original functions locking wrappers for use in the non-atomic context.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dm9000.c