summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/mwifiex/main.h
diff options
context:
space:
mode:
authorMarc Yang <yangyang@marvell.com>2011-05-16 19:17:50 -0700
committerJohn W. Linville <linville@tuxdriver.com>2011-05-19 13:53:55 -0400
commit49729ff616547d7abcb96924d14aa860320e7352 (patch)
tree9f07fc3f7cad6d11fe00adeb8f177f1d1536539f /drivers/net/wireless/mwifiex/main.h
parentf699254c7126d7df94491dfd4c3648f8ec0c0d51 (diff)
downloadtalos-op-linux-49729ff616547d7abcb96924d14aa860320e7352.tar.gz
talos-op-linux-49729ff616547d7abcb96924d14aa860320e7352.zip
mwifiex: reduce CPU usage by tracking highest_queued_prio
This patch adds highest_queued_prio to track priority of packets as they are enqueued so that mwifiex_wmm_get_highest_priolist_ptr() starts checking at the first level where we have packets, instead of the highest. The function also lowers priority value to the level where first packet is found. Signed-off-by: Marc Yang <yangyang@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/mwifiex/main.h')
-rw-r--r--drivers/net/wireless/mwifiex/main.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/mwifiex/main.h b/drivers/net/wireless/mwifiex/main.h
index 537b40dc016e..ea3184d15674 100644
--- a/drivers/net/wireless/mwifiex/main.h
+++ b/drivers/net/wireless/mwifiex/main.h
@@ -215,6 +215,8 @@ struct mwifiex_wmm_desc {
u32 user_pri_pkt_tx_ctrl[WMM_HIGHEST_PRIORITY + 1]; /* UP: 0 to 7 */
/* Number of transmit packets queued */
atomic_t tx_pkts_queued;
+ /* Tracks highest priority with a packet queued */
+ atomic_t highest_queued_prio;
};
struct mwifiex_802_11_security {
OpenPOWER on IntegriCloud