]> git.baikalelectronics.ru Git - kernel.git/commit
mac80211: fix forwarded mesh frame queue mapping
authorThomas Pedersen <thomas@cozybit.com>
Fri, 25 Nov 2011 01:15:23 +0000 (17:15 -0800)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 28 Nov 2011 19:44:05 +0000 (14:44 -0500)
commit275b6ffa15bac8e8bbd2cb2b39d40cda21725e0e
tree8cb77c385088aadf240d270f1c854d72d4193c52
parent78f84949ae581b9fbe098b0c59426e0a9ba7603c
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>
net/mac80211/iface.c
net/mac80211/rx.c
net/mac80211/wme.c
net/mac80211/wme.h