aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2012-06-19 09:54:05 -0400
committerJohannes Berg <johannes.berg@intel.com>2012-06-26 03:37:25 -0400
commit371a255e863857f988a91a3850d6feeaa4f3c536 (patch)
tree77022654c1686dcdbb9753d097a3c3ea1aa396e0 /net
parent171243612f1612402fbf83f3f034a1beefcdea61 (diff)
mac80211: make ieee80211_check_concurrent_iface netdev-independent
ieee80211_check_concurrent_iface() need not use the netdev. Remove the use of the netdev here to prepare the function for P2P device addition. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net')
-rw-r--r--net/mac80211/iface.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
index 576880317d0e..58c2ab3d483a 100644
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
@@ -97,15 +97,12 @@ static int ieee80211_check_concurrent_iface(struct ieee80211_sub_if_data *sdata,
97{ 97{
98 struct ieee80211_local *local = sdata->local; 98 struct ieee80211_local *local = sdata->local;
99 struct ieee80211_sub_if_data *nsdata; 99 struct ieee80211_sub_if_data *nsdata;
100 struct net_device *dev = sdata->dev;
101 100
102 ASSERT_RTNL(); 101 ASSERT_RTNL();
103 102
104 /* we hold the RTNL here so can safely walk the list */ 103 /* we hold the RTNL here so can safely walk the list */
105 list_for_each_entry(nsdata, &local->interfaces, list) { 104 list_for_each_entry(nsdata, &local->interfaces, list) {
106 struct net_device *ndev = nsdata->dev; 105 if (nsdata != sdata && ieee80211_sdata_running(nsdata)) {
107
108 if (ndev != dev && ieee80211_sdata_running(nsdata)) {
109 /* 106 /*
110 * Allow only a single IBSS interface to be up at any 107 * Allow only a single IBSS interface to be up at any
111 * time. This is restricted because beacon distribution 108 * time. This is restricted because beacon distribution
@@ -124,7 +121,8 @@ static int ieee80211_check_concurrent_iface(struct ieee80211_sub_if_data *sdata,
124 * The remaining checks are only performed for interfaces 121 * The remaining checks are only performed for interfaces
125 * with the same MAC address. 122 * with the same MAC address.
126 */ 123 */
127 if (!ether_addr_equal(dev->dev_addr, ndev->dev_addr)) 124 if (!ether_addr_equal(sdata->vif.addr,
125 nsdata->vif.addr))
128 continue; 126 continue;
129 127
130 /* 128 /*