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 | |
| 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>
| -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) |
