Hi,team.
I am currently adapting a new network card, Wangxun, with the txgbe driver.
Unfortunately, I discovered that it incorrectly enables
RTE_ETH_TX_OFFLOAD_TCP_CKSUM.
After explicitly modifying it with info->tx_offload_capa &=
~RTE_ETH_TX_OFFLOAD_TCP_CKSUM,
the outer UDP checksum became correct.
I have also found that this issue exists with other cards like X710/E810,
although it has been correctly fixed in later DPDK versions for the E810.
However, are we left with the option of fixing the incorrect enabling for each
network card
on the OVS side as we discover them? Should we consider a better approach? Does
anyone
have any good ideas regarding this issue?
https://bugs.dpdk.org/show_bug.cgi?id=1529
if (!strcmp(info->driver_name, "net_i40e")
|| !strcmp(info->driver_name, "net_iavf")
|| !strcmp(info->driver_name, "net_txgbe")) {
/* FIXME: Driver advertises the capability but doesn't seem
* to actually support it correctly. Can remove this once
* the driver is fixed on DPDK side. */
VLOG_INFO("%s: disabled Tx outer udp checksum offloads for a "
"net/i40e or net/iavf or net_txgbe port.",
netdev_get_name(&dev->up));
info->tx_offload_capa &= ~RTE_ETH_TX_OFFLOAD_OUTER_UDP_CKSUM;
}
Jun Wang
_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss