• Sujith Manoharan's avatar
    ath9k: Fix BTCOEX shutdown · bff2ec2b
    Sujith Manoharan authored
    Flush MCI profiles only if MCI is being actually used.
    This fixes a panic on driver unload when non-MCI devices
    are being used and btcoex_enable is set.
    
    BUG: unable to handle kernel NULL pointer dereference at           (null)
    IP: [<ffffffffa06296d2>] ath_mci_flush_profile+0x12/0x100 [ath9k]
    Call Trace:
    [<ffffffffa061befe>] ath9k_stop_btcoex+0x5e/0x80 [ath9k]
    [<ffffffffa061ed57>] ath9k_stop+0xb7/0x230 [ath9k]
    [<ffffffffa0533f30>] ieee80211_stop_device+0x50/0x180 [mac80211]
    [<ffffffffa051f0cf>] ieee80211_do_stop+0x2af/0x6a0 [mac80211]
    [<ffffffffa051f4da>] ieee80211_stop+0x1a/0x20 [mac80211]
    [<ffffffff81365d96>] __dev_close_many+0x86/0xe0
    [<ffffffff81365ee0>] dev_close_many+0xa0/0x110
    [<ffffffff81366038>] rollback_registered_many+0xe8/0x260
    [<ffffffff813661cb>] unregister_netdevice_many+0x1b/0x80
    [<ffffffffa051e950>] ieee80211_remove_interfaces+0xd0/0x110 [mac80211]
    [<ffffffffa050c133>] ieee80211_unregister_hw+0x53/0x120 [mac80211]
    [<ffffffffa061d5a4>] ath9k_deinit_device+0x44/0x70 [ath9k]
    [<ffffffffa062c1d4>] ath_pci_remove+0x54/0xa0 [ath9k]
    [<ffffffff81267c46>] pci_device_remove+0x46/0x110
    [<ffffffff8131021c>] __device_release_driver+0x7c/0xe0
    [<ffffffff81310960>] driver_detach+0xd0/0xe0
    [<ffffffff81310078>] bus_remove_driver+0x88/0xe0
    [<ffffffff81311122>] driver_unregister+0x62/0xa0
    [<ffffffff81268004>] pci_unregister_driver+0x44/0xc0
    [<ffffffffa062c8b5>] ath_pci_exit+0x15/0x20 [ath9k]
    [<ffffffffa063205d>] ath9k_exit+0x15/0x31 [ath9k]
    [<ffffffff810b92cc>] sys_delete_module+0x18c/0x270
    [<ffffffff814373dd>] ? retint_swapgs+0x13/0x1b
    [<ffffffff8124828e>] ? trace_hardirqs_on_thunk+0x3a/0x3f
    [<ffffffff81437de9>] system_call_fastpath+0x16/0x1b
    Signed-off-by: default avatarSujith Manoharan <c_manoha@qca.qualcomm.com>
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    bff2ec2b
gpio.c 11.2 KB