mwifiex: adjust high/low water marks for tx_pending queue
This is to fix an issue that the throughput of the higher priority stream gets dropped when a lower priority stream is present. 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>
This commit is contained in:
parent
17e8cec875
commit
62a5b7dcee
|
@ -69,7 +69,8 @@ struct mwifiex_drv_mode {
|
||||||
#define MWIFIEX_TIMER_10S 10000
|
#define MWIFIEX_TIMER_10S 10000
|
||||||
#define MWIFIEX_TIMER_1S 1000
|
#define MWIFIEX_TIMER_1S 1000
|
||||||
|
|
||||||
#define MAX_TX_PENDING 60
|
#define MAX_TX_PENDING 100
|
||||||
|
#define LOW_TX_PENDING 80
|
||||||
|
|
||||||
#define MWIFIEX_UPLD_SIZE (2312)
|
#define MWIFIEX_UPLD_SIZE (2312)
|
||||||
|
|
||||||
|
|
|
@ -140,7 +140,9 @@ int mwifiex_write_data_complete(struct mwifiex_adapter *adapter,
|
||||||
} else {
|
} else {
|
||||||
priv->stats.tx_errors++;
|
priv->stats.tx_errors++;
|
||||||
}
|
}
|
||||||
atomic_dec(&adapter->tx_pending);
|
|
||||||
|
if (atomic_dec_return(&adapter->tx_pending) >= LOW_TX_PENDING)
|
||||||
|
goto done;
|
||||||
|
|
||||||
for (i = 0; i < adapter->priv_num; i++) {
|
for (i = 0; i < adapter->priv_num; i++) {
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue