diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2009-11-25 11:46:19 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-12-21 18:38:52 -0500 |
commit | 47846c9b0c10808d9337d2e7d09361f3e0a0a71a (patch) | |
tree | 8e5d0dbf3309b7868fa73a888f9561ffea1580e3 /net/mac80211/sta_info.c | |
parent | abe60632f311d515b082b450504ee24006023951 (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.c | 8 |
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 | } |