mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 01:49:46 +00:00
wifi: mac80211: don't flush non-uploaded STAs
[ Upstream commitaa3ce3f8fa] If STA state is pre-moved to AUTHORIZED (such as in IBSS scenarios) and insertion fails, the station is freed. In this case, the driver never knew about the station, so trying to flush it is unexpected and may crash. Check if the sta was uploaded to the driver before and fix this. Fixes:d00800a289("wifi: mac80211: add flush_sta method") Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20250102161730.e3d10970a7c7.I491bbcccc46f835ade07df0640a75f6ed92f20a3@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
43b67fb2fe
commit
cf21ef3d43
@@ -665,6 +665,9 @@ static inline void drv_flush_sta(struct ieee80211_local *local,
|
||||
if (sdata && !check_sdata_in_driver(sdata))
|
||||
return;
|
||||
|
||||
if (!sta->uploaded)
|
||||
return;
|
||||
|
||||
trace_drv_flush_sta(local, sdata, &sta->sta);
|
||||
if (local->ops->flush_sta)
|
||||
local->ops->flush_sta(&local->hw, &sdata->vif, &sta->sta);
|
||||
|
||||
Reference in New Issue
Block a user