Stephen Hemminger wrote:
On Thu, 14 Jun 2007 14:52:42 -0400
Jeff Garzik <jeff@xxxxxxxxxx> wrote:
Stephen Hemminger wrote:
The previous patch would crash on remove. pci_disable_msi has to be
called after free_irq. FYI - pci_disable_msi is safe if MSI hasn't been
enabled.
--- a/drivers/net/wireless/mac80211/iwlwifi/base.c 2007-06-13 11:10:10.000000000 -0700
+++ b/drivers/net/wireless/mac80211/iwlwifi/base.c 2007-06-14 11:47:01.000000000 -0700
@@ -8117,10 +8117,13 @@ static int iwl_pci_probe(struct pci_dev
/* If power management is turned on, default to AC mode */
priv->power_mode = IWL_POWER_AC;
priv->user_txpower_limit = IWL_DEFAULT_TX_POWER;
+
+ pci_enable_msi(pdev);
The API wants fixing, if code that fails to check return value of
pci_enable_msi() is being written.
We should definitely be checking the return value there...
Jeff
I don't understand. pci_enable_msi() returns error if device doesn't
do MSI, that's fine.
It also returns errors for conditions other than "doesn't do MSI", and
therein lies the problem with not checking return values.
Jeff
-
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html