summaryrefslogtreecommitdiffstats
path: root/include/net/cfg80211.h
diff options
context:
space:
mode:
authorJukka Rissanen2014-12-15 12:25:38 +0100
committerJohannes Berg2014-12-18 14:38:09 +0100
commit31a60ed1e95ab8afbadb65599bef12b195080a0c (patch)
tree0be2e75a0554a2c1e1c01c6708af80c7388b6e74 /include/net/cfg80211.h
parentmac80211: avoid reconfig if no interfaces are up (diff)
downloadkernel-qcow2-linux-31a60ed1e95ab8afbadb65599bef12b195080a0c.tar.gz
kernel-qcow2-linux-31a60ed1e95ab8afbadb65599bef12b195080a0c.tar.xz
kernel-qcow2-linux-31a60ed1e95ab8afbadb65599bef12b195080a0c.zip
nl80211: Convert sched_scan_req pointer to RCU pointer
Because of possible races when accessing sched_scan_req pointer in rdev, the sched_scan_req is converted to RCU pointer. Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/net/cfg80211.h')
-rw-r--r--include/net/cfg80211.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 4bc1fc9971a5..45d4d7292e53 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -1516,6 +1516,7 @@ struct cfg80211_match_set {
* @mac_addr_mask: MAC address mask used with randomisation, bits that
* are 0 in the mask should be randomised, bits that are 1 should
* be taken from the @mac_addr
+ * @rcu_head: RCU callback used to free the struct
*/
struct cfg80211_sched_scan_request {
struct cfg80211_ssid *ssids;
@@ -1537,6 +1538,7 @@ struct cfg80211_sched_scan_request {
struct wiphy *wiphy;
struct net_device *dev;
unsigned long scan_start;
+ struct rcu_head rcu_head;
/* keep last */
struct ieee80211_channel *channels[0];