diff options
author | Johannes Berg <johannes.berg@intel.com> | 2023-06-06 14:34:47 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2023-06-06 14:51:25 +0200 |
commit | 3e54ed8247c94c8bdf370bd872bd9dfe72b1b12b (patch) | |
tree | b9fbc430168cdfa8ffd4d2d4b2ca3dcfd64c1e78 /net/wireless | |
parent | 7a4615b9a9da5225b22b36a20508555dd133ac24 (diff) | |
download | linux-3e54ed8247c94c8bdf370bd872bd9dfe72b1b12b.tar.gz linux-3e54ed8247c94c8bdf370bd872bd9dfe72b1b12b.tar.bz2 linux-3e54ed8247c94c8bdf370bd872bd9dfe72b1b12b.zip |
wifi: cfg80211: fix locking in sched scan stop work
This should use wiphy_lock() now instead of acquiring the
RTNL, since cfg80211_stop_sched_scan_req() now needs that.
Fixes: a05829a7222e ("cfg80211: avoid holding the RTNL when calling the driver")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/wireless')
-rw-r--r-- | net/wireless/core.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/wireless/core.c b/net/wireless/core.c index 5b0c4d5b80cf..b3ec9eaec36b 100644 --- a/net/wireless/core.c +++ b/net/wireless/core.c @@ -368,12 +368,12 @@ static void cfg80211_sched_scan_stop_wk(struct work_struct *work) rdev = container_of(work, struct cfg80211_registered_device, sched_scan_stop_wk); - rtnl_lock(); + wiphy_lock(&rdev->wiphy); list_for_each_entry_safe(req, tmp, &rdev->sched_scan_req_list, list) { if (req->nl_owner_dead) cfg80211_stop_sched_scan_req(rdev, req, false); } - rtnl_unlock(); + wiphy_unlock(&rdev->wiphy); } static void cfg80211_propagate_radar_detect_wk(struct work_struct *work) |