From aad334b19dd52d939fd45be5be69a1d35586ee36 Mon Sep 17 00:00:00 2001 From: Albert Cano Date: Tue, 21 May 2019 10:57:37 +0100 Subject: [PATCH] [NEUS7920-477] [9610] wlbt: Parametrize and reduce redistribution time It has been observed tput drops when [m]DNS or TCP SYNC packets are transmitted on high tput scenerarios. Current driver changes the AC category to VO on [m]DNS and TCP SYNC frames. When AC VO is selected, balance of traffic will assign mbulk memory to this AC by halving the available memory. That effectivily means that on high tput scenarios the memory available is halved and tput drops (less frames sent to FW before flow control triggers). BoT algorithm is able to redistribute mbulk memory if one of the subqueues is not used. However the current algorithm checks if the queues has not been used for 5 seconds. This time is high when we require high tput. The patch addresses the issue by parametrizing the time to redistribute and setting a value of 0 ms. Change-Id: I22bcb33a5b39e55c90f25ced2582babe55eb9faf SCSC-Bug-Id: SSB-52811 Signed-off-by: Albert Cano ac_q[i].head; if (queue->can_be_distributed && - (ktime_compare(ktime_get(), ktime_add_ms(queue->empty_t, 5000)) > 0)) { + (ktime_compare(ktime_get(), ktime_add_ms(queue->empty_t, scsc_wifi_fcq_distribution_delay_ms)) > 0)) { /* This queue could be redistributed */ qs->ac_inuse &= ~(1 << i); /* To prevent further reallocation */ -- 2.20.1