summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorZihan Xi <zihanx@nebusec.ai>2026-09-18 05:26:51 +0000
committerJohannes Berg <johannes.berg@intel.com>2026-09-21 16:30:25 +0200
commitee3aadc43ea69d98f666431e787137ac0badbb85 (patch)
tree63c29183be1ebc6fb38408ac8f799c2d3ee95499 /drivers/net
parent5e4f3509793b4db2c0835340224743db680e861f (diff)
wifi: mac80211: fix mesh fast xmit path deletion UAF
mesh_fast_tx_cache() stores raw mesh_path pointers. Path deletion flushes the cache and then frees the path with kfree_rcu(), but a lookup that already holds the path can insert a new cache entry after the flush. The cache then points at freed memory. Set MESH_PATH_DELETED before flushing, and skip inserting a cache entry if the path or MPP path is already deleted. Check this under the cache walk lock so it is ordered with the flush. Use WRITE_ONCE() for the deletion flag updates because the cache check reads flags without taking state_lock. Fixes: d5edb9ae8d56 ("wifi: mac80211: mesh fast xmit support") Cc: stable@vger.kernel.org Reported-by: Vega <vega@nebusec.ai> Assisted-by: LLM Co-developed-by: Luxing Yin <root@tr0jan.top> Signed-off-by: Luxing Yin <root@tr0jan.top> Signed-off-by: Zihan Xi <zihanx@nebusec.ai> Link: https://patch.msgid.link/1daa7a98199fe6965c2da7c42717073a6fd39a0b.1789615568.git.zihanx@nebusec.ai Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net')
0 files changed, 0 insertions, 0 deletions