summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwmc3200wifi/netdev.c
diff options
context:
space:
mode:
authorZhu Yi <yi.zhu@intel.com>2009-07-09 11:24:15 +0200
committerJohn W. Linville <linville@tuxdriver.com>2009-07-21 18:07:31 +0200
commit513a2396d8e8327aff1ce50bea3fb4f16ff3455b (patch)
tree7c57830b52248afb95c1270893f4b2dc98ddf781 /drivers/net/wireless/iwmc3200wifi/netdev.c
parentcan: switch carrier on if device was stopped while in bus-off state (diff)
downloadlinux-513a2396d8e8327aff1ce50bea3fb4f16ff3455b.tar.xz
linux-513a2396d8e8327aff1ce50bea3fb4f16ff3455b.zip
iwmc3200wifi: fix NULL pointer dereference in iwm_if_free
The driver private data is now based on wiphy. So we should not touch the private data after wiphy_free() is called. The patch fixes the potential NULL pointer dereference by making the iwm_wdev_free() the last one on the interface removal path. Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwmc3200wifi/netdev.c')
-rw-r--r--drivers/net/wireless/iwmc3200wifi/netdev.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/iwmc3200wifi/netdev.c b/drivers/net/wireless/iwmc3200wifi/netdev.c
index aaa20c6885c8..aea5ccf24ccf 100644
--- a/drivers/net/wireless/iwmc3200wifi/netdev.c
+++ b/drivers/net/wireless/iwmc3200wifi/netdev.c
@@ -151,8 +151,8 @@ void iwm_if_free(struct iwm_priv *iwm)
return;
free_netdev(iwm_to_ndev(iwm));
- iwm_wdev_free(iwm);
iwm_priv_deinit(iwm);
+ iwm_wdev_free(iwm);
}
int iwm_if_add(struct iwm_priv *iwm)