summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/marvell/mwifiex/wmm.c
diff options
context:
space:
mode:
authorchunfan chen <jeffc@marvell.com>2016-01-06 23:40:48 -0800
committerKalle Valo <kvalo@codeaurora.org>2016-01-29 11:11:34 +0200
commitdc386ce76dedaeeaaf006fceb6ed8cf2e20ff026 (patch)
tree69955776bc8eea17c5c88865476e1aeaa81ddeb9 /drivers/net/wireless/marvell/mwifiex/wmm.c
parent2fd5c6ed0b4fbf3c2d9314a24c82862ce5254d42 (diff)
downloadop-kernel-dev-dc386ce76dedaeeaaf006fceb6ed8cf2e20ff026.zip
op-kernel-dev-dc386ce76dedaeeaaf006fceb6ed8cf2e20ff026.tar.gz
mwifiex: fix IBSS data path issue.
The port_open flag is not applicable for IBSS mode. IBSS data path was broken when port_open flag was introduced. This patch fixes the problem by correcting the checks. Fixes: 5c8946330abfa4c ("mwifiex: enable traffic only when port is open") Signed-off-by: chunfan chen <jeffc@marvell.com> Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/net/wireless/marvell/mwifiex/wmm.c')
-rw-r--r--drivers/net/wireless/marvell/mwifiex/wmm.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/wireless/marvell/mwifiex/wmm.c b/drivers/net/wireless/marvell/mwifiex/wmm.c
index acccd67..499e5a7 100644
--- a/drivers/net/wireless/marvell/mwifiex/wmm.c
+++ b/drivers/net/wireless/marvell/mwifiex/wmm.c
@@ -475,7 +475,8 @@ mwifiex_wmm_lists_empty(struct mwifiex_adapter *adapter)
priv = adapter->priv[i];
if (!priv)
continue;
- if (!priv->port_open)
+ if (!priv->port_open &&
+ (priv->bss_mode != NL80211_IFTYPE_ADHOC))
continue;
if (adapter->if_ops.is_port_ready &&
!adapter->if_ops.is_port_ready(priv))
@@ -1099,7 +1100,8 @@ mwifiex_wmm_get_highest_priolist_ptr(struct mwifiex_adapter *adapter,
priv_tmp = adapter->bss_prio_tbl[j].bss_prio_cur->priv;
- if (!priv_tmp->port_open ||
+ if (((priv_tmp->bss_mode != NL80211_IFTYPE_ADHOC) &&
+ !priv_tmp->port_open) ||
(atomic_read(&priv_tmp->wmm.tx_pkts_queued) == 0))
continue;
OpenPOWER on IntegriCloud