aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/sta_info.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2009-11-25 11:46:19 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-12-21 18:38:52 -0500
commit47846c9b0c10808d9337d2e7d09361f3e0a0a71a (patch)
tree8e5d0dbf3309b7868fa73a888f9561ffea1580e3 /net/mac80211/sta_info.c
parentabe60632f311d515b082b450504ee24006023951 (diff)
mac80211: reduce reliance on netdev
For bluetooth 3, we will most likely not have a netdev for a virtual interface (sdata), so prepare for that by reducing the reliance on having a netdev. This patch moves the name and address fields into the sdata struct and uses them from there all over. Some work is needed to keep them sync'ed, but that's not a lot of work and in slow paths anyway. In doing so, this also reduces the number of pointer dereferences in many places, because of things like sdata->dev->dev_addr becoming sdata->vif.addr. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/sta_info.c')
-rw-r--r--net/mac80211/sta_info.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c
index c58a23eea58c..294f1b8b1545 100644
--- a/net/mac80211/sta_info.c
+++ b/net/mac80211/sta_info.c
@@ -372,7 +372,7 @@ int sta_info_insert(struct sta_info *sta)
372 goto out_free; 372 goto out_free;
373 } 373 }
374 374
375 if (WARN_ON(compare_ether_addr(sta->sta.addr, sdata->dev->dev_addr) == 0 || 375 if (WARN_ON(compare_ether_addr(sta->sta.addr, sdata->vif.addr) == 0 ||
376 is_multicast_ether_addr(sta->sta.addr))) { 376 is_multicast_ether_addr(sta->sta.addr))) {
377 err = -EINVAL; 377 err = -EINVAL;
378 goto out_free; 378 goto out_free;
@@ -831,7 +831,7 @@ void ieee80211_sta_expire(struct ieee80211_sub_if_data *sdata,
831 if (time_after(jiffies, sta->last_rx + exp_time)) { 831 if (time_after(jiffies, sta->last_rx + exp_time)) {
832#ifdef CONFIG_MAC80211_IBSS_DEBUG 832#ifdef CONFIG_MAC80211_IBSS_DEBUG
833 printk(KERN_DEBUG "%s: expiring inactive STA %pM\n", 833 printk(KERN_DEBUG "%s: expiring inactive STA %pM\n",
834 sdata->dev->name, sta->sta.addr); 834 sdata->name, sta->sta.addr);
835#endif 835#endif
836 __sta_info_unlink(&sta); 836 __sta_info_unlink(&sta);
837 if (sta) 837 if (sta)
@@ -889,7 +889,7 @@ void ieee80211_sta_ps_deliver_wakeup(struct sta_info *sta)
889 889
890#ifdef CONFIG_MAC80211_VERBOSE_PS_DEBUG 890#ifdef CONFIG_MAC80211_VERBOSE_PS_DEBUG
891 printk(KERN_DEBUG "%s: STA %pM aid %d sending %d filtered/%d PS frames " 891 printk(KERN_DEBUG "%s: STA %pM aid %d sending %d filtered/%d PS frames "
892 "since STA not sleeping anymore\n", sdata->dev->name, 892 "since STA not sleeping anymore\n", sdata->name,
893 sta->sta.addr, sta->sta.aid, sent - buffered, buffered); 893 sta->sta.addr, sta->sta.aid, sent - buffered, buffered);
894#endif /* CONFIG_MAC80211_VERBOSE_PS_DEBUG */ 894#endif /* CONFIG_MAC80211_VERBOSE_PS_DEBUG */
895} 895}
@@ -948,7 +948,7 @@ void ieee80211_sta_ps_deliver_poll_response(struct sta_info *sta)
948 */ 948 */
949 printk(KERN_DEBUG "%s: STA %pM sent PS Poll even " 949 printk(KERN_DEBUG "%s: STA %pM sent PS Poll even "
950 "though there are no buffered frames for it\n", 950 "though there are no buffered frames for it\n",
951 sdata->dev->name, sta->sta.addr); 951 sdata->name, sta->sta.addr);
952#endif /* CONFIG_MAC80211_VERBOSE_PS_DEBUG */ 952#endif /* CONFIG_MAC80211_VERBOSE_PS_DEBUG */
953 } 953 }
954} 954}