diff options
author | Koen Zandberg <koen@bergzand.net> | 2016-02-10 11:49:38 +0100 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2016-02-23 20:29:40 +0100 |
commit | aef00c15b8c503083a703900a755fdb1cf2436e0 (patch) | |
tree | a55e5a8aaca24cd8a7eab610970d8fdf82e6a9ef | |
parent | 6367551f462a3c1e2f38f5ea7335e49443379ab2 (diff) | |
download | linux-aef00c15b8c503083a703900a755fdb1cf2436e0.tar.gz linux-aef00c15b8c503083a703900a755fdb1cf2436e0.tar.bz2 linux-aef00c15b8c503083a703900a755fdb1cf2436e0.zip |
mac802154: Fixes kernel oops when unloading a radio driver
Destroying the workqueue before unregistering the net device caused a
kernel oops
Signed-off-by: Koen Zandberg <koen@bergzand.net>
Acked-by: Alexander Aring <aar@pengutronix.de>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
-rw-r--r-- | net/mac802154/main.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac802154/main.c b/net/mac802154/main.c index e8cab5bb80c6..87da85ae5a6b 100644 --- a/net/mac802154/main.c +++ b/net/mac802154/main.c @@ -218,7 +218,6 @@ void ieee802154_unregister_hw(struct ieee802154_hw *hw) tasklet_kill(&local->tasklet); flush_workqueue(local->workqueue); - destroy_workqueue(local->workqueue); rtnl_lock(); @@ -226,6 +225,7 @@ void ieee802154_unregister_hw(struct ieee802154_hw *hw) rtnl_unlock(); + destroy_workqueue(local->workqueue); wpan_phy_unregister(local->phy); } EXPORT_SYMBOL(ieee802154_unregister_hw); |