kernel-hacking-2024-linux-s.../net/mac80211
Johannes Berg 8f4fa08762 wifi: mac80211: use monitor sdata with driver only if desired
In commit 0d9c2beed1 ("wifi: mac80211: fix monitor channel
with chanctx emulation") I changed mac80211 to always have an
internal monitor_sdata to have something to have the chanctx
bound to.

However, if the driver didn't also have the WANT_MONITOR flag
this would cause mac80211 to allocate it without telling the
driver (which was intentional) but also use it for later APIs
to the driver without it ever having known about it which was
_not_ intentional.

Check through the code and only use the monitor_sdata in the
relevant places (TX, MU-MIMO follow settings, TX power, and
interface iteration) when the WANT_MONITOR flag is set.

Cc: stable@vger.kernel.org
Fixes: 0d9c2beed1 ("wifi: mac80211: fix monitor channel with chanctx emulation")
Reported-by: ZeroBeat <ZeroBeat@gmx.de>
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219086
Tested-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://patch.msgid.link/20240725184836.25d334157a8e.I02574086da2c5cf0e18264ce5807db6f14ffd9c0@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2024-07-26 12:30:49 +02:00
..
tests
aead_api.c
aead_api.h
aes_ccm.h
aes_cmac.c
aes_cmac.h
aes_gcm.h
aes_gmac.c
aes_gmac.h
agg-rx.c
agg-tx.c wifi: mac80211: fix NULL dereference at band check in starting tx ba session 2024-06-26 10:44:00 +02:00
airtime.c
cfg.c wifi: mac80211: use monitor sdata with driver only if desired 2024-07-26 12:30:49 +02:00
chan.c wifi: mac80211: add wiphy radio assignment and validation 2024-07-09 11:36:12 +02:00
debug.h
debugfs.c wifi: mac80211: remove DEAUTH_NEED_MGD_TX_PREP 2024-06-28 09:56:30 +02:00
debugfs.h
debugfs_key.c
debugfs_key.h
debugfs_netdev.c
debugfs_netdev.h
debugfs_sta.c
debugfs_sta.h
driver-ops.c Highlights this time are: 2024-06-27 13:53:43 -07:00
driver-ops.h wifi: mac80211: inform the low level if drv_stop() is a suspend 2024-06-26 10:25:46 +02:00
drop.h
eht.c
ethtool.c
fils_aead.c
fils_aead.h
he.c wifi: mac80211: correctly parse Spatial Reuse Parameter Set element 2024-05-29 15:35:12 +02:00
ht.c wifi: mac80211: send DelBA with correct BSSID 2024-05-23 11:46:37 +02:00
ibss.c wifi: mac80211: extend ifcomb check functions for multi-radio 2024-07-09 11:36:12 +02:00
ieee80211_i.h wifi: mac80211: extend ifcomb check functions for multi-radio 2024-07-09 11:36:12 +02:00
iface.c wifi: mac80211: extend ifcomb check functions for multi-radio 2024-07-09 11:36:12 +02:00
Kconfig
key.c
key.h
led.c
led.h
link.c wifi: mac80211: cancel color change finalize work when link is stopped 2024-07-08 18:28:47 +02:00
main.c wifi: mac80211: add support for DFS with multiple radios 2024-07-09 11:36:12 +02:00
Makefile
mesh.c wifi: mac80211: restrict public action ECSA frame handling 2024-06-26 10:21:44 +02:00
mesh.h
mesh_hwmp.c
mesh_pathtbl.c wifi: mac80211: mesh: Fix leak of mesh_preq_queue objects 2024-05-29 15:17:03 +02:00
mesh_plink.c
mesh_ps.c
mesh_sync.c
michael.c
michael.h
mlme.c wifi: mac80211: remove DEAUTH_NEED_MGD_TX_PREP 2024-06-28 09:56:30 +02:00
ocb.c
offchannel.c wifi: mac80211: handle HW restart during ROC 2024-05-29 10:38:53 +02:00
parse.c wifi: mac80211: correct EHT EIRP TPE parsing 2024-06-12 12:25:54 +02:00
pm.c wifi: mac80211: inform the low level if drv_stop() is a suspend 2024-06-26 10:25:46 +02:00
rate.c
rate.h
rc80211_minstrel_ht.c
rc80211_minstrel_ht.h
rc80211_minstrel_ht_debugfs.c
rx.c wifi: mac80211: do not check BSS color collision in certain cases 2024-07-08 18:28:47 +02:00
s1g.c
scan.c wifi: mac80211: Avoid address calculations via out of bounds array indexing 2024-06-14 09:08:41 +02:00
spectmgmt.c wifi: mac80211: fix AP chandef capturing in CSA 2024-07-10 12:35:58 +02:00
sta_info.c wifi: mac80211: Fix deadlock in ieee80211_sta_ps_deliver_wakeup() 2024-05-29 15:19:55 +02:00
sta_info.h wifi: mac80211: add ieee80211_tdls_sta_link_id() 2024-06-26 10:22:04 +02:00
status.c
tdls.c
tkip.c
tkip.h
trace.c
trace.h wifi: mac80211: inform the low level if drv_stop() is a suspend 2024-06-26 10:25:46 +02:00
trace_msg.h
tx.c wifi: mac80211: use monitor sdata with driver only if desired 2024-07-26 12:30:49 +02:00
util.c wifi: mac80211: use monitor sdata with driver only if desired 2024-07-26 12:30:49 +02:00
vht.c wifi: mac80211: optionally pass chandef to ieee80211_sta_cur_vht_bw() 2024-06-26 10:21:54 +02:00
wbrf.c
wep.c
wep.h
wme.c
wme.h
wpa.c
wpa.h