diff options
Diffstat (limited to 'drivers/net/ethernet/cisco/enic/enic_main.c')
-rw-r--r-- | drivers/net/ethernet/cisco/enic/enic_main.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/cisco/enic/enic_main.c b/drivers/net/ethernet/cisco/enic/enic_main.c index b12b32bc53a6..7f8891b36bf7 100644 --- a/drivers/net/ethernet/cisco/enic/enic_main.c +++ b/drivers/net/ethernet/cisco/enic/enic_main.c | |||
@@ -1733,6 +1733,7 @@ static void enic_reset(struct work_struct *work) | |||
1733 | 1733 | ||
1734 | rtnl_lock(); | 1734 | rtnl_lock(); |
1735 | 1735 | ||
1736 | spin_lock(&enic->enic_api_lock); | ||
1736 | enic_dev_hang_notify(enic); | 1737 | enic_dev_hang_notify(enic); |
1737 | enic_stop(enic->netdev); | 1738 | enic_stop(enic->netdev); |
1738 | enic_dev_hang_reset(enic); | 1739 | enic_dev_hang_reset(enic); |
@@ -1741,6 +1742,7 @@ static void enic_reset(struct work_struct *work) | |||
1741 | enic_set_rss_nic_cfg(enic); | 1742 | enic_set_rss_nic_cfg(enic); |
1742 | enic_dev_set_ig_vlan_rewrite_mode(enic); | 1743 | enic_dev_set_ig_vlan_rewrite_mode(enic); |
1743 | enic_open(enic->netdev); | 1744 | enic_open(enic->netdev); |
1745 | spin_unlock(&enic->enic_api_lock); | ||
1744 | 1746 | ||
1745 | rtnl_unlock(); | 1747 | rtnl_unlock(); |
1746 | } | 1748 | } |
@@ -2153,6 +2155,7 @@ static int enic_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
2153 | */ | 2155 | */ |
2154 | 2156 | ||
2155 | spin_lock_init(&enic->devcmd_lock); | 2157 | spin_lock_init(&enic->devcmd_lock); |
2158 | spin_lock_init(&enic->enic_api_lock); | ||
2156 | 2159 | ||
2157 | /* | 2160 | /* |
2158 | * Set ingress vlan rewrite mode before vnic initialization | 2161 | * Set ingress vlan rewrite mode before vnic initialization |