aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/mwifiex/11n_aggr.c
diff options
context:
space:
mode:
authorAndreas Fenkart <[andreas.fenkart@streamunlimited.com]>2013-04-18 19:34:12 -0400
committerJohn W. Linville <linville@tuxdriver.com>2013-04-23 15:18:40 -0400
commitb006ed545cbadf1ebd4683719554742d20dbcede (patch)
tree4469dfebe8b2ed700175ecba692a03ab581cf548 /drivers/net/wireless/mwifiex/11n_aggr.c
parent2e23731954d3641a418455e8e0c37c9b8aa7f567 (diff)
mwifiex: rework round robin scheduling of bss nodes.
Rotate bss prio list, so the bss next to the one served, will come first in the list of bss' with equal priority. This way we pick bss nodes in a round robin fashion. Using list rotation instead of a cur ptr simplifies iteration to calling list_for_each_entry. List rotation is done via list_move, where the head itself is temporarily removed and then re-inserted after the bss just served. Signed-off-by: Andreas Fenkart <andreas.fenkart@streamunlimited.com> Acked-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/mwifiex/11n_aggr.c')
-rw-r--r--drivers/net/wireless/mwifiex/11n_aggr.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/drivers/net/wireless/mwifiex/11n_aggr.c b/drivers/net/wireless/mwifiex/11n_aggr.c
index c6d74518aaab..a78e0651409c 100644
--- a/drivers/net/wireless/mwifiex/11n_aggr.c
+++ b/drivers/net/wireless/mwifiex/11n_aggr.c
@@ -297,12 +297,6 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv,
297 } 297 }
298 if (ret != -EBUSY) { 298 if (ret != -EBUSY) {
299 mwifiex_rotate_priolists(priv, pra_list, ptrindex); 299 mwifiex_rotate_priolists(priv, pra_list, ptrindex);
300 /* Now bss_prio_cur pointer points to next node */
301 adapter->bss_prio_tbl[priv->bss_priority].bss_prio_cur =
302 list_first_entry(
303 &adapter->bss_prio_tbl[priv->bss_priority]
304 .bss_prio_cur->list,
305 struct mwifiex_bss_prio_node, list);
306 } 300 }
307 301
308 return 0; 302 return 0;