linux/net/mac80211
Thomas Pedersen d3c1597b8d mac80211: fix forwarded mesh frame queue mapping
We can't rely on ieee80211_select_queue() to do its job at this point
since the skb->protocol is not yet known. Instead, factor out and reuse
the queue mapping logic for injected frames.

Also, to mitigate congestion, forwarded frames should be dropped if the
outgoing queue was stopped.  This was not correctly implemented as we
were not checking the right queue.  Furthermore, we were dropping frames
that had arrived to their destination if that queue was stopped.

Signed-off-by: Thomas Pedersen <thomas@cozybit.com>
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-11-28 14:44:05 -05:00
..
Kconfig mac80211: handle TDLS high-level commands and frames 2011-09-30 15:57:07 -04:00
Makefile mac80211: add the minstrel_ht rate control algorithm 2010-06-02 16:12:59 -04:00
aes_ccm.c mac80211: use AES_BLOCK_SIZE 2011-07-08 11:11:24 -04:00
aes_ccm.h mac80211: use AES_BLOCK_SIZE 2011-07-08 11:11:24 -04:00
aes_cmac.c mac80211: use AES_BLOCK_SIZE 2011-07-08 11:11:24 -04:00
aes_cmac.h mac80211: fix CMAC races 2011-07-08 11:11:20 -04:00
agg-rx.c mac80211: do not pass AP VLAN vif pointers to drivers 2011-11-28 14:43:52 -05:00
agg-tx.c mac80211: do not pass AP VLAN vif pointers to drivers 2011-11-28 14:43:52 -05:00
cfg.c {nl,cfg,mac}80211: Allow Setting Multicast Rate in Mesh 2011-11-28 14:44:02 -05:00
cfg.h
chan.c mac80211: fix channel type recalculation with HT and non-HT interfaces 2011-03-14 14:46:58 -04:00
debugfs.c mac80211: remove debugfs noack test 2011-11-28 14:34:15 -05:00
debugfs.h mac80211: refactor debugfs function generation code 2010-11-15 13:24:48 -05:00
debugfs_key.c mac80211: fix CMAC races 2011-07-08 11:11:20 -04:00
debugfs_key.h mac80211: support separate default keys 2010-12-13 15:23:29 -05:00
debugfs_netdev.c mac80211: add ieee80211_vif param to tsf functions 2011-09-27 14:27:48 -04:00
debugfs_netdev.h mac80211: reduce reliance on netdev 2009-12-21 18:38:52 -05:00
debugfs_sta.c mac80211: remove unused ASSOC_AP flag 2011-11-21 16:20:43 -05:00
debugfs_sta.h
driver-ops.h mac80211: do not pass AP VLAN vif pointers to drivers 2011-11-28 14:43:52 -05:00
driver-trace.c mac80211: fix sparse warnings/errors 2009-08-04 16:43:25 -04:00
driver-trace.h mac80211: allow out-of-band EOSP notification 2011-09-30 15:57:23 -04:00
event.c cfg80211: use proper allocation flags 2009-07-10 15:01:49 -04:00
ht.c mac80211: Make __check_htcap_disable static. 2011-11-28 14:43:59 -05:00
ibss.c mac80211: set carrier_on for ibss vifs only while joined 2011-11-11 12:32:49 -05:00
ieee80211_i.h mac80211: Add NoAck per tid support 2011-11-28 14:36:21 -05:00
iface.c mac80211: fix forwarded mesh frame queue mapping 2011-11-28 14:44:05 -05:00
key.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux 2011-11-22 14:05:46 -05:00
key.h mac80211: allow driver to disconnect after resume 2011-07-13 14:49:43 -04:00
led.c net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules 2011-10-31 19:30:30 -04:00
led.h mac80211: selective throughput LED trigger active 2010-12-22 14:33:37 -05:00
main.c mac80211: Support ht-cap over-rides. 2011-11-21 16:22:06 -05:00
mesh.c mac80211: Support ht-cap over-rides. 2011-11-21 16:22:06 -05:00
mesh.h mac80211: Avoid filling up mesh preq queue with redundant requests 2011-11-09 16:01:02 -05:00
mesh_hwmp.c mac80211: fix switched HWMP frame addresses 2011-11-28 14:44:04 -05:00
mesh_pathtbl.c mac80211: failed forwarded mesh frame addressing 2011-11-28 14:44:03 -05:00
mesh_plink.c mac80211: Support ht-cap over-rides. 2011-11-21 16:22:06 -05:00
michael.c
michael.h
mlme.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux 2011-11-22 14:05:46 -05:00
offchannel.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux 2011-11-22 14:05:46 -05:00
pm.c mac80211: verify virtual interfaces in driver API 2011-11-09 16:01:02 -05:00
rate.c net: Fix files explicitly needing to include module.h 2011-10-31 19:30:28 -04:00
rate.h mac80211: add the minstrel_ht rate control algorithm 2010-06-02 16:12:59 -04:00
rc80211_minstrel.c minstrel: Remove unused function parameter in calc_rate_durations() 2011-11-11 12:32:52 -05:00
rc80211_minstrel.h minstrel_ht: fixed rate mode through debugfs 2011-06-01 15:12:29 -04:00
rc80211_minstrel_debugfs.c net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules 2011-10-31 19:30:30 -04:00
rc80211_minstrel_ht.c minstrel_ht: Remove unused function parameters 2011-11-17 15:43:58 -05:00
rc80211_minstrel_ht.h minstrel_ht: move minstrel_mcs_groups declaration to header file 2010-06-24 15:42:18 -04:00
rc80211_minstrel_ht_debugfs.c net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules 2011-10-31 19:30:30 -04:00
rc80211_pid.h Fix common misspellings 2011-03-31 11:26:23 -03:00
rc80211_pid_algo.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
rc80211_pid_debugfs.c net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules 2011-10-31 19:30:30 -04:00
rx.c mac80211: fix forwarded mesh frame queue mapping 2011-11-28 14:44:05 -05:00
scan.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux 2011-11-22 14:05:46 -05:00
spectmgmt.c mac80211: Remove unnecessary OOM logging messages 2011-09-13 15:45:02 -04:00
sta_info.c mac80211: do not pass AP VLAN vif pointers to drivers 2011-11-28 14:43:52 -05:00
sta_info.h mac80211: timeout tx agg sessions in way similar to rx agg sessions 2011-11-28 14:43:49 -05:00
status.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux 2011-11-22 14:05:46 -05:00
tkip.c net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules 2011-10-31 19:30:30 -04:00
tkip.h mac80211: fix TKIP races, make API easier to use 2011-07-08 11:11:19 -04:00
tx.c {nl,cfg,mac}80211: Allow Setting Multicast Rate in Mesh 2011-11-28 14:44:02 -05:00
util.c mac80211: don't indicate probe resp change in IBSS mode 2011-11-28 14:43:25 -05:00
wep.c mac80211: use skb list for fragments 2011-11-21 16:20:42 -05:00
wep.h mac80211: remove the dependency on crypto_blkcipher 2011-04-04 16:20:00 -04:00
wme.c mac80211: fix forwarded mesh frame queue mapping 2011-11-28 14:44:05 -05:00
wme.h mac80211: fix forwarded mesh frame queue mapping 2011-11-28 14:44:05 -05:00
work.c mac80211: Support ht-cap over-rides. 2011-11-21 16:22:06 -05:00
wpa.c mac80211: use skb list for fragments 2011-11-21 16:20:42 -05:00
wpa.h