mirror of
https://github.com/openvswitch/ovs
synced 2025-08-31 14:25:26 +00:00
netdev-dpdk: Disable net/tap Tx L4 checksum offloads.
As reported by Ales when doing some OVN integration tests with OVS 3.2, net/tap has broken L4 checksum offloads. Fixes are pending on DPDK side. Until they get in a LTS release used by OVS, disable those Tx offloads. Acked-by: Eelco Chaudron <echaudro@redhat.com> Signed-off-by: David Marchand <david.marchand@redhat.com> Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
This commit is contained in:
committed by
Ilya Maximets
parent
13b874f4fe
commit
bb61931dc5
@@ -1312,6 +1312,16 @@ dpdk_eth_dev_init(struct netdev_dpdk *dev)
|
||||
dev->hw_ol_features &= ~NETDEV_RX_HW_SCATTER;
|
||||
}
|
||||
|
||||
if (!strcmp(info.driver_name, "net_tap")) {
|
||||
/* FIXME: L4 checksum offloading is broken in DPDK net/tap driver.
|
||||
* This workaround can be removed once the fix makes it to a DPDK
|
||||
* LTS release used by OVS. */
|
||||
VLOG_INFO("%s: disabled Tx L4 checksum offloads for a net/tap port.",
|
||||
netdev_get_name(&dev->up));
|
||||
info.tx_offload_capa &= ~RTE_ETH_TX_OFFLOAD_UDP_CKSUM;
|
||||
info.tx_offload_capa &= ~RTE_ETH_TX_OFFLOAD_TCP_CKSUM;
|
||||
}
|
||||
|
||||
if (info.tx_offload_capa & RTE_ETH_TX_OFFLOAD_IPV4_CKSUM) {
|
||||
dev->hw_ol_features |= NETDEV_TX_IPV4_CKSUM_OFFLOAD;
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user