alx: fix lockdep annotation
authorMaarten Lankhorst <maarten.lankhorst@canonical.com>
Thu, 11 Jul 2013 13:53:21 +0000 (15:53 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 11 Jul 2013 18:47:07 +0000 (11:47 -0700)
Move spin_lock_init to be called before the spinlocks are used, preventing a lockdep splat.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/atheros/alx/main.c

index 0e0b242a9dd4509a6c8c856f6f47e7a4d926f757..027398ebbba6aae4bfe946bd6d74bc002f671cab 100644 (file)
@@ -1245,6 +1245,8 @@ static int alx_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 
        SET_NETDEV_DEV(netdev, &pdev->dev);
        alx = netdev_priv(netdev);
+       spin_lock_init(&alx->hw.mdio_lock);
+       spin_lock_init(&alx->irq_lock);
        alx->dev = netdev;
        alx->hw.pdev = pdev;
        alx->msg_enable = NETIF_MSG_LINK | NETIF_MSG_HW | NETIF_MSG_IFUP |
@@ -1327,9 +1329,6 @@ static int alx_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 
        INIT_WORK(&alx->link_check_wk, alx_link_check);
        INIT_WORK(&alx->reset_wk, alx_reset);
-       spin_lock_init(&alx->hw.mdio_lock);
-       spin_lock_init(&alx->irq_lock);
-
        netif_carrier_off(netdev);
 
        err = register_netdev(netdev);