[dpdk-dev] [RFC 0/2] add Tx prepare support for bonding device
Min Hu (Connor)
humin29 at huawei.com
Fri Apr 16 13:12:59 CEST 2021
Looks good to me.
在 2021/4/16 19:04, Chengchang Tang 写道:
> This patch add Tx prepare for bonding device.
>
> Currently, the bonding driver has not implemented the callback of
> rte_eth_tx_prepare function. Therefore, the TX prepare function of the
> slave devices will never be invoked. When hardware offloading such as
> CKSUM and TSO are enabled for some drivers, tx_prepare needs to be used
> to adjust packets (for example, set correct pseudo packet headers).
> Otherwise, related offloading fails and even packets are sent
> incorrectly. Due to this limitation, the bonded device cannot use these
> HW offloading in the Tx direction.
>
> Because packet sending algorithms are numerous and complex in bond PMD,
> it is hard to design the callback for rte_eth_tx_prepare. In this patch,
> the tx_prepare callback of bonding PMD is not implemented. Instead,
> rte_eth_tx_prepare has been called in tx_burst callback. And a global
> variable is introduced to control whether the bonded device need call
> the rte_eth_tx_prepare. If upper-layer users need to use some TX
> offloading that depend on tx_prepare , they should enable the preparation
> function. In this way, the bonded device will call the rte_eth_tx_prepare
> for the fast path packets in the tx_burst callback.
>
> Chengchang Tang (2):
> net/bonding: add Tx prepare for bonding
> app/testpmd: add cmd for bonding Tx prepare
>
> app/test-pmd/cmdline.c | 66 +++++++++++++++++++++++++++++
> doc/guides/testpmd_app_ug/testpmd_funcs.rst | 9 ++++
> drivers/net/bonding/eth_bond_private.h | 1 +
> drivers/net/bonding/rte_eth_bond.h | 29 +++++++++++++
> drivers/net/bonding/rte_eth_bond_api.c | 28 ++++++++++++
> drivers/net/bonding/rte_eth_bond_pmd.c | 33 +++++++++++++--
> drivers/net/bonding/version.map | 5 +++
> 7 files changed, 167 insertions(+), 4 deletions(-)
>
> --
> 2.7.4
>
> .
>
More information about the dev
mailing list