From: Lorenzo Bianconi Date: Fri, 14 Nov 2025 13:16:22 +0000 (+0100) Subject: wifi: mt76: mt7996: move mt7996_update_beacons under mt76 mutex X-Git-Tag: v6.19-rc1~170^2~33^2~5^2~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a84b172cca90a3a6b97afac9113daf3bf1b172b3;p=thirdparty%2Fkernel%2Flinux.git wifi: mt76: mt7996: move mt7996_update_beacons under mt76 mutex Move mt7996_update_beacons routine inside mt76 mutex critical section in mt7996_mac_reset_work() in order to run mt7996_vif_conf_link() in mt7996_mcu_add_beacon routine. Fixes: f30906c55a400 ("wifi: mt76: mt7996: disable beacons when going offchannel") Signed-off-by: Lorenzo Bianconi Tested-by: Ben Greear Link: https://patch.msgid.link/20251114-mt76-fix-missing-mtx-v1-2-259ebf11f654@kernel.org Signed-off-by: Felix Fietkau --- diff --git a/drivers/net/wireless/mediatek/mt76/mt7996/mac.c b/drivers/net/wireless/mediatek/mt76/mt7996/mac.c index 2c869f710193e..a3420f683d274 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7996/mac.c +++ b/drivers/net/wireless/mediatek/mt76/mt7996/mac.c @@ -2632,11 +2632,11 @@ void mt7996_mac_reset_work(struct work_struct *work) local_bh_enable(); ieee80211_wake_queues(hw); + mt7996_update_beacons(dev); mutex_unlock(&dev->mt76.mutex); mt7996_npu_hw_init(dev); - mt7996_update_beacons(dev); mt7996_for_each_phy(dev, phy) ieee80211_queue_delayed_work(hw, &phy->mt76->mac_work,