rtl8xxxu: Unregister from mac80211 before shutting down the device

This fixes a long standing bug where mac80211 would send disconnect
packets to the device, after we had shut down the device.

Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
Jes Sorensen 2016-04-14 16:37:13 -04:00 committed by Kalle Valo
parent 8e25496090
commit 8cae2f1da8

View File

@ -8003,13 +8003,6 @@ exit:
return ret;
}
static void rtl8xxxu_disable_device(struct ieee80211_hw *hw)
{
struct rtl8xxxu_priv *priv = hw->priv;
priv->fops->power_off(priv);
}
static void rtl8xxxu_cam_write(struct rtl8xxxu_priv *priv,
struct ieee80211_key_conf *key, const u8 *mac)
{
@ -9726,13 +9719,14 @@ static void rtl8xxxu_disconnect(struct usb_interface *interface)
hw = usb_get_intfdata(interface);
priv = hw->priv;
rtl8xxxu_disable_device(hw);
ieee80211_unregister_hw(hw);
priv->fops->power_off(priv);
usb_set_intfdata(interface, NULL);
dev_info(&priv->udev->dev, "disconnecting\n");
ieee80211_unregister_hw(hw);
kfree(priv->fw_data);
mutex_destroy(&priv->usb_buf_mutex);
mutex_destroy(&priv->h2c_mutex);