ns83820: spin_lock_irq() => spin_lock()
authorDan Carpenter <error27@gmail.com>
Wed, 13 Oct 2010 09:18:53 +0000 (09:18 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 18 Oct 2010 08:53:35 +0000 (01:53 -0700)
This is essentially cosmetic.  At this point the IRQs are already
disabled because we called spin_lock_irq(&dev->rx_info.lock).

The real bug here was fixed back in 2006 in 3a10ccebe: "[PATCH] lock
validator: fix ns83820.c irq-flags bug".  Prior to that patch, it was
a "spin_lock_irq is not nestable" type bug.  The 2006 patch changes the
unlock to not re-enable IRQs, which eliminates the potential deadlock.

But this bit was missed.  We should change the lock function as well so
it balances nicely.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ns83820.c

index 3bbd0aab17e813201eb51ba35f1f4990e80e7887..84134c766f3a86fca82195683be07de25cbf5fa1 100644 (file)
@@ -772,7 +772,7 @@ static int ns83820_setup_rx(struct net_device *ndev)
                phy_intr(ndev);
 
                /* Okay, let it rip */
-               spin_lock_irq(&dev->misc_lock);
+               spin_lock(&dev->misc_lock);
                dev->IMR_cache |= ISR_PHY;
                dev->IMR_cache |= ISR_RXRCMP;
                //dev->IMR_cache |= ISR_RXERR;