linux/net/wireless
Zhao Li 6c5fc504d0 wifi: cfg80211: stop PMSR before P2P and NAN teardown
PMSR request teardown must abort active measurements while the
wireless_dev is still present in the driver. cfg80211_leave_locked() and
cfg80211_stop_pd() already do this before invoking the driver's stop
callback, but cfg80211_stop_p2p_device() and cfg80211_stop_nan() do not.

Those helpers are also called directly by nl80211, rfkill shutdown, and
wireless_dev unregister paths. If one of these paths stops a P2P device
or NAN interface with a pending request, it removes the mac80211
subinterface from the driver first. Subsequent request cleanup cannot
reach the lower driver's abort callback, but cfg80211 frees the request
regardless. Driver state can then retain a stale request and use it when
it later reports a result.

Call cfg80211_pmsr_wdev_down() before stopping the P2P device or NAN
interface. This keeps lower-driver request state and cfg80211 request
ownership in sync for all of the helpers' callers.

Fixes: 9bb7e0f24e ("cfg80211: add peer measurement with FTM initiator API")
Assisted-by: Codex:gpt-5.6-sol
Signed-off-by: Zhao Li <enderaoelyther@gmail.com>
Link: https://patch.msgid.link/20260731071103.73563-1-enderaoelyther@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2026-08-02 19:06:33 +02:00
..
certs wifi: cfg80211: fix certs build to not depend on file order 2023-12-14 09:11:51 +01:00
tests wifi: cfg80211: tests: check BSS lookup failure reasons 2026-07-22 16:11:37 +02:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
ap.c wifi: cfg80211: remove wdev mutex 2023-09-11 11:27:23 +02:00
chan.c wifi: cfg80211: remove 5/10 MHz channel support 2026-06-03 14:07:05 +02:00
core.c wifi: cfg80211: stop PMSR before P2P and NAN teardown 2026-08-02 19:06:33 +02:00
core.h wifi: cfg80211: convert cookie output to input parameter 2026-08-02 17:40:08 +02:00
debugfs.c wifi: cfg80211: Add parameters to radio-specific debugfs directories 2025-10-27 09:18:41 +01:00
debugfs.h
ethtool.c wifi: cfg80211: Remove the redundant wiphy_dev 2025-09-10 15:05:48 +02:00
ibss.c wifi: cfg80211: support key installation on non-netdev wdevs 2026-03-02 11:28:33 +01:00
Kconfig wifi: cfg80211: stop exporting wext symbols 2024-10-08 21:53:31 +02:00
Makefile wifi: mac80211, cfg80211: Export michael_mic() and move it to cfg80211 2026-04-08 08:55:15 +02:00
mesh.c wifi: cfg80211: move DFS related members to links[] in wireless_dev 2024-09-06 13:01:05 +02:00
michael-mic.c wifi: cfg80211: Explicitly include <linux/export.h> in michael-mic.c 2026-04-09 08:54:43 +02:00
mlme.c wifi: cfg80211: convert cookie output to input parameter 2026-08-02 17:40:08 +02:00
nl80211.c wifi: nl80211: clean up color-change beacon data on errors 2026-08-02 18:23:27 +02:00
nl80211.h wifi: cfg80211: allow representing NPCA in chandef 2026-05-05 14:49:02 +02:00
ocb.c wifi: cfg80211: remove wdev mutex 2023-09-11 11:27:23 +02:00
of.c wifi: Add SPDX ids to some files in the wireless subsystem 2026-03-06 10:54:23 +01:00
pmsr.c wifi: cfg80211: guard optional PMSR nominal time 2026-07-21 14:12:24 +02:00
radiotap.c wifi: Add SPDX ids to some files in the wireless subsystem 2026-03-06 10:54:23 +01:00
rdev-ops.h wifi: cfg80211: convert tx_control_port cookie to input parameter 2026-08-02 17:40:08 +02:00
reg.c wifi: cfg80211: reg: add a newline in DFS debug message 2026-07-22 16:13:38 +02:00
reg.h wifi: Add SPDX ids to some files in the wireless subsystem 2026-03-06 10:54:23 +01:00
scan.c Mostly driver changes this time: 2026-07-27 16:03:40 -07:00
sme.c wifi: cfg80211: use wiphy work for socket owner autodisconnect 2026-07-07 09:27:42 +02:00
sysfs.c Networking changes for 7.1. 2026-04-14 18:36:10 -07:00
sysfs.h
trace.c wifi: Add SPDX ids to some files in the wireless subsystem 2026-03-06 10:54:23 +01:00
trace.h wifi: nl80211/cfg80211: rename probe_client to probe_peer 2026-07-06 12:45:19 +02:00
util.c wifi: cfg80211: clarify and tighten key checks 2026-07-21 19:18:53 +02:00
wext-compat.c wifi: cfg80211: clarify and tighten key checks 2026-07-21 19:18:53 +02:00
wext-compat.h Revert "wifi: cfg80211: unexport wireless_nlevent_flush()" 2024-10-09 08:53:01 +02:00
wext-core.c wifi: cfg80211: remove WIPHY_FLAG_DISABLE_WEXT 2026-07-06 12:55:29 +02:00
wext-priv.c wifi: Add SPDX ids to some files in the wireless subsystem 2026-03-06 10:54:23 +01:00
wext-proc.c wifi: Add SPDX ids to some files in the wireless subsystem 2026-03-06 10:54:23 +01:00
wext-sme.c wifi: cfg80211: define and use wiphy guard 2024-12-04 16:10:52 +01:00