[PATCH v3 0/1] wifi: mac80211: fix monitor mode frame capture for real chanctx drivers

From: Devin Wittmayer

Date: Mon May 18 2026 - 13:03:38 EST


v2 [1] used list_is_singular() + list_first_entry() to find the
fallback chanctx. Johannes pointed out [2] that the pair is the
rculist.h anti-pattern: the two reads of head->next race
list_del_rcu() of the sole entry between the singularity check
and the entry fetch. v3 uses list_first_or_null_rcu() with an
rcu_access_pointer() check that the entry is the only one in
the list, as rculist.h suggests.

The v2 user-visible TX path is unchanged in v3, so my Tested-by
from v2 carries forward: the airgeddon evil-twin flow on mt7921e
PCIe + mt7921u USB + Kali VM with MT7921U passthrough still
applies.

[1] https://lore.kernel.org/linux-wireless/20260518064025.96792-1-lucid_duck@xxxxxxxxxxxxx/
[2] https://lore.kernel.org/linux-wireless/70c49e598ffba2864c8168c7185c0abec76b59dd.camel@xxxxxxxxxxxxxxxx/

傅继晗 (1):
wifi: mac80211: fix monitor mode frame capture for real chanctx drivers

net/mac80211/tx.c | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)