diff options
author | Helmut Schaa <helmut.schaa@googlemail.com> | 2009-02-12 12:51:03 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-02-27 14:51:46 -0500 |
commit | 795cc0ad54128ada6f54d8b1eb051a907df6387e (patch) | |
tree | 8af6c23cec22ad8dc37b051981b216ac2fde833f /drivers/net/wireless/iwlwifi | |
parent | 8bd1d07f9345750bd4d767e6c1600919672f98ba (diff) |
iwlagn: clean up error path in iwl_pci_probe
This avoids triggering a BUG_ON in pci_disable_msi in the error path.
Furthermore remove the first call to pci_disable_device as it is already
called at out_pci_disable_device.
Both issues were introduced in the patch "iwlagn: fix hw-rfkill while
the interface is down".
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Acked-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c index 397577c06c92..87b237d48b3c 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c | |||
@@ -3612,7 +3612,7 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
3612 | err = sysfs_create_group(&pdev->dev.kobj, &iwl_attribute_group); | 3612 | err = sysfs_create_group(&pdev->dev.kobj, &iwl_attribute_group); |
3613 | if (err) { | 3613 | if (err) { |
3614 | IWL_ERR(priv, "failed to create sysfs device attributes\n"); | 3614 | IWL_ERR(priv, "failed to create sysfs device attributes\n"); |
3615 | goto out_uninit_drv; | 3615 | goto out_free_irq; |
3616 | } | 3616 | } |
3617 | 3617 | ||
3618 | iwl_setup_deferred_work(priv); | 3618 | iwl_setup_deferred_work(priv); |
@@ -3657,10 +3657,10 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
3657 | 3657 | ||
3658 | out_remove_sysfs: | 3658 | out_remove_sysfs: |
3659 | sysfs_remove_group(&pdev->dev.kobj, &iwl_attribute_group); | 3659 | sysfs_remove_group(&pdev->dev.kobj, &iwl_attribute_group); |
3660 | out_free_irq: | ||
3661 | free_irq(priv->pci_dev->irq, priv); | ||
3660 | out_disable_msi: | 3662 | out_disable_msi: |
3661 | pci_disable_msi(priv->pci_dev); | 3663 | pci_disable_msi(priv->pci_dev); |
3662 | pci_disable_device(priv->pci_dev); | ||
3663 | out_uninit_drv: | ||
3664 | iwl_uninit_drv(priv); | 3664 | iwl_uninit_drv(priv); |
3665 | out_free_eeprom: | 3665 | out_free_eeprom: |
3666 | iwl_eeprom_free(priv); | 3666 | iwl_eeprom_free(priv); |