diff options
author | Michael Buesch <mb@bu3sch.de> | 2006-09-27 08:26:33 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2006-10-16 20:09:47 -0400 |
commit | 7c28ad2d83ecc637237fe684659a6afbce0bb2a8 (patch) | |
tree | 4bdbe26516d2d8aa195f97eae9cd120d47521ab6 /net/ieee80211/softmac/ieee80211softmac_io.c | |
parent | 3693ec670b3bb4d11295856bea3592dd8f37f9a5 (diff) |
[PATCH] softmac: Fix WX and association related races
This fixes some race conditions in the WirelessExtension
handling and association handling code.
Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/ieee80211/softmac/ieee80211softmac_io.c')
-rw-r--r-- | net/ieee80211/softmac/ieee80211softmac_io.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/net/ieee80211/softmac/ieee80211softmac_io.c b/net/ieee80211/softmac/ieee80211softmac_io.c index 82bfddbf33a2..e8419cfb058f 100644 --- a/net/ieee80211/softmac/ieee80211softmac_io.c +++ b/net/ieee80211/softmac/ieee80211softmac_io.c | |||
@@ -475,8 +475,13 @@ int ieee80211softmac_handle_beacon(struct net_device *dev, | |||
475 | { | 475 | { |
476 | struct ieee80211softmac_device *mac = ieee80211_priv(dev); | 476 | struct ieee80211softmac_device *mac = ieee80211_priv(dev); |
477 | 477 | ||
478 | if (mac->associated && memcmp(network->bssid, mac->associnfo.bssid, ETH_ALEN) == 0) | 478 | /* This might race, but we don't really care and it's not worth |
479 | ieee80211softmac_process_erp(mac, network->erp_value); | 479 | * adding heavyweight locking in this fastpath. |
480 | */ | ||
481 | if (mac->associnfo.associated) { | ||
482 | if (memcmp(network->bssid, mac->associnfo.bssid, ETH_ALEN) == 0) | ||
483 | ieee80211softmac_process_erp(mac, network->erp_value); | ||
484 | } | ||
480 | 485 | ||
481 | return 0; | 486 | return 0; |
482 | } | 487 | } |