diff options
author | David S. Miller <davem@davemloft.net> | 2008-11-21 20:05:11 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-11-21 20:05:11 -0500 |
commit | 6c0bce37ffc8f000a516fadf6dee84579c4c8f9b (patch) | |
tree | 273af34d6f777b1ecb0fce7b2685e868064e6cf9 /net/mac80211 | |
parent | e243455d345ef62751723671bc2605a2f6032ceb (diff) | |
parent | a1eb5fe319beb9e181aa52c8adf75ad9aab56a89 (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6
Diffstat (limited to 'net/mac80211')
-rw-r--r-- | net/mac80211/iface.c | 17 | ||||
-rw-r--r-- | net/mac80211/mlme.c | 1 | ||||
-rw-r--r-- | net/mac80211/rc80211_pid_algo.c | 6 | ||||
-rw-r--r-- | net/mac80211/sta_info.h | 3 |
4 files changed, 18 insertions, 9 deletions
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c index cde145221b61..46082125f3e1 100644 --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c | |||
@@ -229,8 +229,14 @@ static int ieee80211_open(struct net_device *dev) | |||
229 | if (res) | 229 | if (res) |
230 | goto err_stop; | 230 | goto err_stop; |
231 | 231 | ||
232 | if (ieee80211_vif_is_mesh(&sdata->vif)) | 232 | if (ieee80211_vif_is_mesh(&sdata->vif)) { |
233 | local->fif_other_bss++; | ||
234 | netif_addr_lock_bh(local->mdev); | ||
235 | ieee80211_configure_filter(local); | ||
236 | netif_addr_unlock_bh(local->mdev); | ||
237 | |||
233 | ieee80211_start_mesh(sdata); | 238 | ieee80211_start_mesh(sdata); |
239 | } | ||
234 | changed |= ieee80211_reset_erp_info(sdata); | 240 | changed |= ieee80211_reset_erp_info(sdata); |
235 | ieee80211_bss_info_change_notify(sdata, changed); | 241 | ieee80211_bss_info_change_notify(sdata, changed); |
236 | ieee80211_enable_keys(sdata); | 242 | ieee80211_enable_keys(sdata); |
@@ -456,8 +462,15 @@ static int ieee80211_stop(struct net_device *dev) | |||
456 | /* fall through */ | 462 | /* fall through */ |
457 | case NL80211_IFTYPE_MESH_POINT: | 463 | case NL80211_IFTYPE_MESH_POINT: |
458 | if (ieee80211_vif_is_mesh(&sdata->vif)) { | 464 | if (ieee80211_vif_is_mesh(&sdata->vif)) { |
459 | /* allmulti is always set on mesh ifaces */ | 465 | /* other_bss and allmulti are always set on mesh |
466 | * ifaces */ | ||
467 | local->fif_other_bss--; | ||
460 | atomic_dec(&local->iff_allmultis); | 468 | atomic_dec(&local->iff_allmultis); |
469 | |||
470 | netif_addr_lock_bh(local->mdev); | ||
471 | ieee80211_configure_filter(local); | ||
472 | netif_addr_unlock_bh(local->mdev); | ||
473 | |||
461 | ieee80211_stop_mesh(sdata); | 474 | ieee80211_stop_mesh(sdata); |
462 | } | 475 | } |
463 | /* fall through */ | 476 | /* fall through */ |
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 4d76bf25bada..d81a4d2cd3aa 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -14,7 +14,6 @@ | |||
14 | #include <linux/delay.h> | 14 | #include <linux/delay.h> |
15 | #include <linux/if_ether.h> | 15 | #include <linux/if_ether.h> |
16 | #include <linux/skbuff.h> | 16 | #include <linux/skbuff.h> |
17 | #include <linux/netdevice.h> | ||
18 | #include <linux/if_arp.h> | 17 | #include <linux/if_arp.h> |
19 | #include <linux/wireless.h> | 18 | #include <linux/wireless.h> |
20 | #include <linux/random.h> | 19 | #include <linux/random.h> |
diff --git a/net/mac80211/rc80211_pid_algo.c b/net/mac80211/rc80211_pid_algo.c index 2328ba568039..96ceb7e86c5c 100644 --- a/net/mac80211/rc80211_pid_algo.c +++ b/net/mac80211/rc80211_pid_algo.c | |||
@@ -403,11 +403,11 @@ static void *rate_control_pid_alloc(struct ieee80211_hw *hw, | |||
403 | S_IRUSR | S_IWUSR, debugfsdir, | 403 | S_IRUSR | S_IWUSR, debugfsdir, |
404 | &pinfo->sampling_period); | 404 | &pinfo->sampling_period); |
405 | de->coeff_p = debugfs_create_u32("coeff_p", S_IRUSR | S_IWUSR, | 405 | de->coeff_p = debugfs_create_u32("coeff_p", S_IRUSR | S_IWUSR, |
406 | debugfsdir, &pinfo->coeff_p); | 406 | debugfsdir, (u32 *)&pinfo->coeff_p); |
407 | de->coeff_i = debugfs_create_u32("coeff_i", S_IRUSR | S_IWUSR, | 407 | de->coeff_i = debugfs_create_u32("coeff_i", S_IRUSR | S_IWUSR, |
408 | debugfsdir, &pinfo->coeff_i); | 408 | debugfsdir, (u32 *)&pinfo->coeff_i); |
409 | de->coeff_d = debugfs_create_u32("coeff_d", S_IRUSR | S_IWUSR, | 409 | de->coeff_d = debugfs_create_u32("coeff_d", S_IRUSR | S_IWUSR, |
410 | debugfsdir, &pinfo->coeff_d); | 410 | debugfsdir, (u32 *)&pinfo->coeff_d); |
411 | de->smoothing_shift = debugfs_create_u32("smoothing_shift", | 411 | de->smoothing_shift = debugfs_create_u32("smoothing_shift", |
412 | S_IRUSR | S_IWUSR, debugfsdir, | 412 | S_IRUSR | S_IWUSR, debugfsdir, |
413 | &pinfo->smoothing_shift); | 413 | &pinfo->smoothing_shift); |
diff --git a/net/mac80211/sta_info.h b/net/mac80211/sta_info.h index 5ad9250b63ab..dc2606d0ae77 100644 --- a/net/mac80211/sta_info.h +++ b/net/mac80211/sta_info.h | |||
@@ -169,9 +169,6 @@ struct sta_ampdu_mlme { | |||
169 | * @lock: used for locking all fields that require locking, see comments | 169 | * @lock: used for locking all fields that require locking, see comments |
170 | * in the header file. | 170 | * in the header file. |
171 | * @flaglock: spinlock for flags accesses | 171 | * @flaglock: spinlock for flags accesses |
172 | * @addr: MAC address of this STA | ||
173 | * @aid: STA's unique AID (1..2007, 0 = not assigned yet), | ||
174 | * only used in AP (and IBSS?) mode | ||
175 | * @listen_interval: listen interval of this station, when we're acting as AP | 172 | * @listen_interval: listen interval of this station, when we're acting as AP |
176 | * @pin_status: used internally for pinning a STA struct into memory | 173 | * @pin_status: used internally for pinning a STA struct into memory |
177 | * @flags: STA flags, see &enum ieee80211_sta_info_flags | 174 | * @flags: STA flags, see &enum ieee80211_sta_info_flags |