From ee9e80f8d49c38d5b72fe6be9038b16295c52a4d Mon Sep 17 00:00:00 2001 From: Mohit Khanna Date: Tue, 10 Nov 2015 11:32:49 -0800 Subject: [PATCH] qcacld-3.0: Increase default tx_queue_len for WLAN netdevice qcacld-2.0 to qcacld-3.0 propagation An increase in tx_queue_len of netdev to 3000 is giving us better TCP TX performance. Hence, increasing its value from its default (1000). This gives us about 30 - 40 Mbps of boost. Change-Id: I68f26ac0f4a040b0bbf10dd571dae8e5316f16b3 CRs-Fixed: 927673 --- core/hdd/inc/wlan_hdd_main.h | 4 ++++ core/hdd/src/wlan_hdd_hostapd.c | 1 + core/hdd/src/wlan_hdd_main.c | 1 + 3 files changed, 6 insertions(+) diff --git a/core/hdd/inc/wlan_hdd_main.h b/core/hdd/inc/wlan_hdd_main.h index 103082ca7d83..61a5f786ba22 100644 --- a/core/hdd/inc/wlan_hdd_main.h +++ b/core/hdd/inc/wlan_hdd_main.h @@ -75,6 +75,10 @@ #else #define NUM_TX_QUEUES 4 #endif + +/** Length of the TX queue for the netdev */ +#define HDD_NETDEV_TX_QUEUE_LEN (3000) + /** Bytes to reserve in the headroom */ #define LIBRA_HW_NEEDED_HEADROOM 128 /** Hdd Tx Time out value */ diff --git a/core/hdd/src/wlan_hdd_hostapd.c b/core/hdd/src/wlan_hdd_hostapd.c index 437a5416430f..0138c20de28c 100644 --- a/core/hdd/src/wlan_hdd_hostapd.c +++ b/core/hdd/src/wlan_hdd_hostapd.c @@ -5935,6 +5935,7 @@ hdd_adapter_t *hdd_wlan_create_ap_dev(hdd_context_t *pHddCtx, pWlanHostapdDev->watchdog_timeo = HDD_TX_TIMEOUT; pWlanHostapdDev->mtu = HDD_DEFAULT_MTU; + pWlanHostapdDev->tx_queue_len = HDD_NETDEV_TX_QUEUE_LEN; cdf_mem_copy(pWlanHostapdDev->dev_addr, (void *)macAddr, sizeof(tSirMacAddr)); diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index 0c242fed3e57..c0dbf04009be 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -1812,6 +1812,7 @@ static hdd_adapter_t *hdd_alloc_station_adapter(hdd_context_t *hdd_ctx, pWlanDev->destructor = free_netdev; pWlanDev->ieee80211_ptr = &adapter->wdev; + pWlanDev->tx_queue_len = HDD_NETDEV_TX_QUEUE_LEN; adapter->wdev.wiphy = hdd_ctx->wiphy; adapter->wdev.netdev = pWlanDev; /* set pWlanDev's parent to underlying device */