Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright 2002-2005, Instant802 Networks, Inc. | 2 * Copyright 2002-2005, Instant802 Networks, Inc. |
| 3 * Copyright 2005-2006, Devicescape Software, Inc. | 3 * Copyright 2005-2006, Devicescape Software, Inc. |
| 4 * Copyright 2006-2007 Jiri Benc <jbenc@suse.cz> | 4 * Copyright 2006-2007 Jiri Benc <jbenc@suse.cz> |
| 5 * Copyright 2007 Johannes Berg <johannes@sipsolutions.net> | 5 * Copyright 2007 Johannes Berg <johannes@sipsolutions.net> |
| 6 * | 6 * |
| 7 * This program is free software; you can redistribute it and/or modify | 7 * This program is free software; you can redistribute it and/or modify |
| 8 * it under the terms of the GNU General Public License version 2 as | 8 * it under the terms of the GNU General Public License version 2 as |
| 9 * published by the Free Software Foundation. | 9 * published by the Free Software Foundation. |
| 10 * | 10 * |
| (...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 279 if (tx->flags & IEEE80211_TX_PS_BUFFERED) | 279 if (tx->flags & IEEE80211_TX_PS_BUFFERED) |
| 280 return TX_CONTINUE; | 280 return TX_CONTINUE; |
| 281 | 281 |
| 282 sta_flags = tx->sta ? get_sta_flags(tx->sta) : 0; | 282 sta_flags = tx->sta ? get_sta_flags(tx->sta) : 0; |
| 283 | 283 |
| 284 if (likely(tx->flags & IEEE80211_TX_UNICAST)) { | 284 if (likely(tx->flags & IEEE80211_TX_UNICAST)) { |
| 285 if (unlikely(!(sta_flags & WLAN_STA_ASSOC) && | 285 if (unlikely(!(sta_flags & WLAN_STA_ASSOC) && |
| 286 tx->sdata->vif.type != NL80211_IFTYPE_ADHOC && | 286 tx->sdata->vif.type != NL80211_IFTYPE_ADHOC && |
| 287 ieee80211_is_data(hdr->frame_control))) { | 287 ieee80211_is_data(hdr->frame_control))) { |
| 288 #ifdef CONFIG_MAC80211_VERBOSE_DEBUG | 288 #ifdef CONFIG_MAC80211_VERBOSE_DEBUG |
| 289 » » » if (net_ratelimit()) | 289 » » » printk(KERN_DEBUG "%s: dropped data frame to not " |
|
Sam Leffler
2010/12/01 00:23:44
lost local change
| |
| 290 » » » » printk(KERN_DEBUG "%s: dropped data frame to " | 290 » » » "associated station %pM\n", |
| 291 » » » » "not associated station %pM\n", | 291 » » » tx->sdata->name, hdr->addr1); |
| 292 » » » » tx->sdata->name, hdr->addr1); | |
| 293 #endif /* CONFIG_MAC80211_VERBOSE_DEBUG */ | 292 #endif /* CONFIG_MAC80211_VERBOSE_DEBUG */ |
| 294 I802_DEBUG_INC(tx->local->tx_handlers_drop_not_assoc); | 293 I802_DEBUG_INC(tx->local->tx_handlers_drop_not_assoc); |
| 295 return TX_DROP; | 294 return TX_DROP; |
| 296 } | 295 } |
| 297 } else { | 296 } else { |
| 298 if (unlikely(ieee80211_is_data(hdr->frame_control) && | 297 if (unlikely(ieee80211_is_data(hdr->frame_control) && |
| 299 tx->local->num_sta == 0 && | 298 tx->local->num_sta == 0 && |
| 300 tx->sdata->vif.type != NL80211_IFTYPE_ADHOC)) { | 299 tx->sdata->vif.type != NL80211_IFTYPE_ADHOC)) { |
| 301 /* | 300 /* |
| 302 * No associated STAs - no need to send multicast | 301 * No associated STAs - no need to send multicast |
| (...skipping 2229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2532 | 2531 |
| 2533 /* | 2532 /* |
| 2534 * The other path calling ieee80211_xmit is from the tasklet, | 2533 * The other path calling ieee80211_xmit is from the tasklet, |
| 2535 * and while we can handle concurrent transmissions locking | 2534 * and while we can handle concurrent transmissions locking |
| 2536 * requirements are that we do not come into tx with bhs on. | 2535 * requirements are that we do not come into tx with bhs on. |
| 2537 */ | 2536 */ |
| 2538 local_bh_disable(); | 2537 local_bh_disable(); |
| 2539 ieee80211_xmit(sdata, skb); | 2538 ieee80211_xmit(sdata, skb); |
| 2540 local_bh_enable(); | 2539 local_bh_enable(); |
| 2541 } | 2540 } |
| OLD | NEW |