mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-11 07:03:09 -04:00
Revert "qcacld-3.0: flush batched GRO_NORMAL packets"
This reverts Change-Id: Ib3e851c0822a85c4712a1b817cc19dfecf6d0e7a. First we need to get ABI snapshot/Whitelist updated for the new kernel API being used in this change and then only we can promote this change. To unblock promotion, revert this change for now. Change-Id: I8aae0fe64623034486c9db6275a16654119c06bd CRs-Fixed: 2673959
This commit is contained in:
parent
e8fee5584c
commit
b4a3dddcc6
3 changed files with 7 additions and 50 deletions
|
|
@ -352,7 +352,7 @@ static void dp_rx_thread_gro_flush(struct dp_rx_thread *rx_thread)
|
|||
dp_debug("flushing packets for thread %u", rx_thread->id);
|
||||
|
||||
local_bh_disable();
|
||||
dp_rx_napi_gro_flush(&rx_thread->napi);
|
||||
napi_gro_flush(&rx_thread->napi, false);
|
||||
local_bh_enable();
|
||||
|
||||
rx_thread->stats.gro_flushes++;
|
||||
|
|
@ -953,17 +953,3 @@ QDF_STATUS dp_rx_tm_set_cpu_mask(struct dp_rx_tm_handle *rx_tm_hdl,
|
|||
}
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0))
|
||||
void dp_rx_napi_gro_flush(struct napi_struct *napi)
|
||||
{
|
||||
if (napi->poll) {
|
||||
napi_gro_flush(napi, false);
|
||||
if (napi->rx_count) {
|
||||
netif_receive_skb_list(&napi->rx_list);
|
||||
qdf_init_list_head(&napi->rx_list);
|
||||
napi->rx_count = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -46,21 +46,6 @@ struct dp_txrx_handle {
|
|||
struct dp_txrx_config config;
|
||||
};
|
||||
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0))
|
||||
/**
|
||||
* dp_rx_napi_gro_flush() - do gro flush
|
||||
* @napi: napi used to do gro flush
|
||||
*
|
||||
* if there is RX GRO_NORMAL packets pending in napi
|
||||
* rx_list, flush them manually right after napi_gro_flush.
|
||||
*
|
||||
* return: none
|
||||
*/
|
||||
void dp_rx_napi_gro_flush(struct napi_struct *napi);
|
||||
#else
|
||||
#define dp_rx_napi_gro_flush(_napi) napi_gro_flush((_napi), false)
|
||||
#endif
|
||||
|
||||
#ifdef FEATURE_WLAN_DP_RX_THREADS
|
||||
/**
|
||||
* dp_txrx_get_cmn_hdl_frm_ext_hdl() - conversion func ext_hdl->txrx_handle_cmn
|
||||
|
|
|
|||
|
|
@ -1544,20 +1544,6 @@ static void hdd_resolve_rx_ol_mode(struct hdd_context *hdd_ctx)
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* When bus bandwidth is idle, if RX data is delivered with
|
||||
* napi_gro_receive, to reduce RX delay related with GRO,
|
||||
* check gro_result returned from napi_gro_receive to determine
|
||||
* is extra GRO flush still necessary.
|
||||
*/
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0))
|
||||
#define HDD_IS_EXTRA_GRO_FLUSH_NECESSARY(_gro_ret) \
|
||||
((_gro_ret) != GRO_DROP)
|
||||
#else
|
||||
#define HDD_IS_EXTRA_GRO_FLUSH_NECESSARY(_gro_ret) \
|
||||
((_gro_ret) != GRO_DROP && (_gro_ret) != GRO_NORMAL)
|
||||
#endif
|
||||
|
||||
/**
|
||||
* hdd_gro_rx_bh_disable() - GRO RX/flush function.
|
||||
* @napi_to_use: napi to be used to give packets to the stack, gro flush
|
||||
|
|
@ -1577,23 +1563,23 @@ static QDF_STATUS hdd_gro_rx_bh_disable(struct hdd_adapter *adapter,
|
|||
{
|
||||
QDF_STATUS status = QDF_STATUS_SUCCESS;
|
||||
struct hdd_context *hdd_ctx = adapter->hdd_ctx;
|
||||
gro_result_t gro_ret;
|
||||
gro_result_t gro_res;
|
||||
|
||||
skb_set_hash(skb, QDF_NBUF_CB_RX_FLOW_ID(skb), PKT_HASH_TYPE_L4);
|
||||
|
||||
local_bh_disable();
|
||||
gro_ret = napi_gro_receive(napi_to_use, skb);
|
||||
gro_res = napi_gro_receive(napi_to_use, skb);
|
||||
|
||||
if (hdd_get_current_throughput_level(hdd_ctx) == PLD_BUS_WIDTH_IDLE) {
|
||||
if (HDD_IS_EXTRA_GRO_FLUSH_NECESSARY(gro_ret)) {
|
||||
if (gro_res != GRO_DROP && gro_res != GRO_NORMAL) {
|
||||
adapter->hdd_stats.tx_rx_stats.
|
||||
rx_gro_low_tput_flush++;
|
||||
dp_rx_napi_gro_flush(napi_to_use);
|
||||
napi_gro_flush(napi_to_use, false);
|
||||
}
|
||||
}
|
||||
local_bh_enable();
|
||||
|
||||
if (gro_ret == GRO_DROP)
|
||||
if (gro_res == GRO_DROP)
|
||||
status = QDF_STATUS_E_GRO_DROP;
|
||||
|
||||
return status;
|
||||
|
|
@ -1696,7 +1682,7 @@ static void hdd_rxthread_napi_gro_flush(void *data)
|
|||
* As we are breaking context in Rxthread mode, there is rx_thread NAPI
|
||||
* corresponds each hif_napi.
|
||||
*/
|
||||
dp_rx_napi_gro_flush(&qca_napii->rx_thread_napi);
|
||||
napi_gro_flush(&qca_napii->rx_thread_napi, false);
|
||||
local_bh_enable();
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue