ath9k: fix access to freed data on unload
authorPavel Roskin <proski@gnu.org>
Sun, 31 Jan 2010 02:37:24 +0000 (21:37 -0500)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 1 Feb 2010 20:40:09 +0000 (15:40 -0500)
commitab5132a26236e308c6d3d832a3e04fca351656d8
treedb473e3bd020a5e2f3fe02a381bb24e7b285ab5e
parente389900ed31975f3ce091764bf394b045058dad1
ath9k: fix access to freed data on unload

Calling ath_bus_cleanup() after ieee80211_free_hw() resulted in access
to common->bus_ops, which is already freed as part of the device data.

Remove the cleanup field in struct ath_bus_ops, as it was never used
properly.  Remove ath_bus_cleanup().  Merge cleanup functions in place
of the ath_bus_cleanup() calls.  Take care not to use any device data
after ieee80211_free_hw().

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath.h
drivers/net/wireless/ath/ath9k/ahb.c
drivers/net/wireless/ath/ath9k/ath9k.h
drivers/net/wireless/ath/ath9k/pci.c