]> git.baikalelectronics.ru Git - kernel.git/commit
3c59x: Remove incorrect locking; correct documented lock hierarchy
authorBen Hutchings <ben@decadent.org.uk>
Mon, 30 Aug 2010 14:15:33 +0000 (14:15 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 2 Sep 2010 01:01:55 +0000 (18:01 -0700)
commit7996ab682a6f26ac606125af80103fbb3b6fddbb
tree5fe89de05b65e4a435d59dcd9992fb63182ddedf
parent6cc9fb248e2efa537b26c1630cf75caf7c355593
3c59x: Remove incorrect locking; correct documented lock hierarchy

vortex_ioctl() was grabbing vortex_private::lock around its call to
generic_mii_ioctl().  This is no longer necessary since there are more
specific locks which the mdio_{read,write}() functions will obtain.
Worse, those functions do not save and restore IRQ flags when locking
the MII state, so interrupts will be enabled when generic_mii_ioctl()
returns.

Since there is currently no need for any function to call
mdio_{read,write}() while holding another spinlock, do not change them
to save and restore IRQ flags but remove the specification of ordering
between vortex_private::lock and vortex_private::mii_lock.

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/3c59x.c