msg/async/dpdk:Add the TSO configuration

The TSO feature of some NICs(mlx5,iavf,sfc,hns3) is abnormal in DPDK-20.11.
The TSO feature is fiexed in DPDK-21.11. Therefore, a configure is added
for compatibility.

Signed-off-by: Chunsong Feng <fengchunsong@huawei.com>
Reviewed-by: luo rixin <luorixin@huawei.com>
Reviewed-by: Han Fengzhe  <hanfengzhe@hisilicon.com>
This commit is contained in:
Chunsong Feng 2021-12-10 05:52:37 +00:00
parent 2925e34887
commit f84196ac0f
2 changed files with 8 additions and 1 deletions

View File

@ -1465,6 +1465,10 @@ options:
level: advanced
default: true
with_legacy: true
- name: ms_dpdk_enable_tso
type: bool
level: advanced
default: true
- name: ms_dpdk_hw_flow_control
type: bool
level: advanced

View File

@ -310,7 +310,10 @@ int DPDKDevice::init_port_start()
}
// TSO is supported starting from DPDK v1.8
if (_dev_info.tx_offload_capa & DEV_TX_OFFLOAD_TCP_TSO) {
// TSO is abnormal in some DPDK versions (eg.dpdk-20.11-3.e18.aarch64), try
// disable TSO by ms_dpdk_enable_tso=false
if ((_dev_info.tx_offload_capa & DEV_TX_OFFLOAD_TCP_TSO) &&
cct->_conf.get_val<bool>("ms_dpdk_enable_tso")) {
ldout(cct, 1) << __func__ << " TSO is supported" << dendl;
_hw_features.tx_tso = 1;
}