diff options
author | Mike McCormack <mikem@ring3k.org> | 2010-03-13 15:24:18 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-03-13 15:24:18 -0500 |
commit | 2a40018984c5c9647df1c18489449a3a227d9136 (patch) | |
tree | 060b4f3595eecbdb9d670ed6da4c7892520a40a9 /drivers/net | |
parent | e2577a065832f2c6d108de2e027891bdb2d78924 (diff) |
sky2: Avoid rtnl_unlock without rtnl_lock
Make sure we always call rtnl_lock before going down the
error path in sky2_resume, which unlocks the rtnl lock.
Signed-off-by: Mike McCormack <mikem@ring3k.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/sky2.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c index 653bdd76ef46..d8ec4c11fd49 100644 --- a/drivers/net/sky2.c +++ b/drivers/net/sky2.c | |||
@@ -4863,6 +4863,7 @@ static int sky2_resume(struct pci_dev *pdev) | |||
4863 | if (!hw) | 4863 | if (!hw) |
4864 | return 0; | 4864 | return 0; |
4865 | 4865 | ||
4866 | rtnl_lock(); | ||
4866 | err = pci_set_power_state(pdev, PCI_D0); | 4867 | err = pci_set_power_state(pdev, PCI_D0); |
4867 | if (err) | 4868 | if (err) |
4868 | goto out; | 4869 | goto out; |
@@ -4884,7 +4885,6 @@ static int sky2_resume(struct pci_dev *pdev) | |||
4884 | sky2_write32(hw, B0_IMSK, Y2_IS_BASE); | 4885 | sky2_write32(hw, B0_IMSK, Y2_IS_BASE); |
4885 | napi_enable(&hw->napi); | 4886 | napi_enable(&hw->napi); |
4886 | 4887 | ||
4887 | rtnl_lock(); | ||
4888 | for (i = 0; i < hw->ports; i++) { | 4888 | for (i = 0; i < hw->ports; i++) { |
4889 | err = sky2_reattach(hw->dev[i]); | 4889 | err = sky2_reattach(hw->dev[i]); |
4890 | if (err) | 4890 | if (err) |