OSDN Git Service

wifi: mt76: do not run mt76_unregister_device() on unregistered hw
authorLorenzo Bianconi <lorenzo@kernel.org>
Wed, 22 Feb 2023 23:10:25 +0000 (00:10 +0100)
committerKalle Valo <kvalo@kernel.org>
Mon, 13 Mar 2023 13:29:44 +0000 (15:29 +0200)
commit41130c32f3a18fcc930316da17f3a5f3bc326aa1
tree465d2205891e6b140cd9d5a4dd2407c2d890f389
parent96c069508377547f913e7265a80fffe9355de592
wifi: mt76: do not run mt76_unregister_device() on unregistered hw

Trying to probe a mt7921e pci card without firmware results in a
successful probe where ieee80211_register_hw hasn't been called. When
removing the driver, ieee802111_unregister_hw is called unconditionally
leading to a kernel NULL pointer dereference.
Fix the issue running mt76_unregister_device routine just for registered
hw.

Link: https://bugs.debian.org/1029116
Link: https://bugs.kali.org/view.php?id=8140
Reported-by: Stuart Hayhurst <stuart.a.hayhurst@gmail.com>
Fixes: 1c71e03afe4b ("mt76: mt7921: move mt7921_init_hw in a dedicated work")
Tested-by: Helmut Grohne <helmut@freexian.com>
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/be3457d82f4e44bb71a22b2b5db27b644a37b1e1.1677107277.git.lorenzo@kernel.org
drivers/net/wireless/mediatek/mt76/mac80211.c
drivers/net/wireless/mediatek/mt76/mt76.h