From mboxrd@z Thu Jan 1 00:00:00 1970
Return-Path:
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
by inbox.dpdk.org (Postfix) with ESMTP id 2A3DC45898;
Thu, 29 Aug 2024 14:25:56 +0200 (CEST)
Received: from mails.dpdk.org (localhost [127.0.0.1])
by mails.dpdk.org (Postfix) with ESMTP id BC0E940279;
Thu, 29 Aug 2024 14:25:55 +0200 (CEST)
Received: from inbox.dpdk.org (inbox.dpdk.org [95.142.172.178])
by mails.dpdk.org (Postfix) with ESMTP id 02A034026A
for ; Thu, 29 Aug 2024 14:25:53 +0200 (CEST)
Received: by inbox.dpdk.org (Postfix, from userid 33)
id C6BEE45899; Thu, 29 Aug 2024 14:25:53 +0200 (CEST)
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [DPDK/ethdev Bug 1529] "net_txgbe" have not implemented outer UDP
checksum offload, but the capability flag has been set.
Date: Thu, 29 Aug 2024 12:25:53 +0000
X-Bugzilla-Reason: AssignedTo
X-Bugzilla-Type: new
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: DPDK
X-Bugzilla-Component: ethdev
X-Bugzilla-Version: 24.07
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: junwang01@cestc.cn
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Resolution:
X-Bugzilla-Priority: Normal
X-Bugzilla-Assigned-To: dev@dpdk.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform
op_sys bug_status bug_severity priority component assigned_to reporter
target_milestone
Message-ID:
Content-Type: multipart/alternative; boundary=17249343530.08A0a.4016770
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://bugs.dpdk.org/
Auto-Submitted: auto-generated
X-Auto-Response-Suppress: All
MIME-Version: 1.0
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
Errors-To: dev-bounces@dpdk.org
--17249343530.08A0a.4016770
Date: Thu, 29 Aug 2024 14:25:53 +0200
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://bugs.dpdk.org/
Auto-Submitted: auto-generated
X-Auto-Response-Suppress: All
https://bugs.dpdk.org/show_bug.cgi?id=3D1529
Bug ID: 1529
Summary: "net_txgbe" have not implemented outer UDP checksum
offload, but the capability flag has been set.
Product: DPDK
Version: 24.07
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: ethdev
Assignee: dev@dpdk.org
Reporter: junwang01@cestc.cn
Target Milestone: ---
In OVS-DPDK, when using the Wangxun RP1000 network card, I found that the c=
ard
supports outer UDP checksum offload according to the capabilities retrieved=
by
OVS-DPDK. However, in actual testing, the outer UDP checksum of the transmi=
tted
packets is incorrect. After I manually disabled
RTE_ETH_TX_OFFLOAD_OUTER_UDP_CKSUM in the OVS code, the traffic was normal.=
So,
does this mean that the card does not actually support outer UDP checksum
offload, but the capability is enabled in the DPDK code? Or is there a bug =
in
the implementation logic?
Before modification in OVS:
status : {bus_info=3D"bus_name=3Dpci, vendor_id=3D8088, device=
_id=3D1001",
driver_name=3Dnet_txgbe, if_descr=3D"DPDK 23.11.0 net_txgbe", if_type=3D"6",
link_speed=3D"10Gbps", max_hash_mac_addrs=3D"4096", max_mac_addrs=3D"128",
max_rx_pktlen=3D"1618", max_rx_queues=3D"128", max_tx_queues=3D"128", max_v=
fs=3D"0",
max_vmdq_pools=3D"64", min_rx_bufsize=3D"1024", n_rxq=3D"2", n_txq=3D"5", n=
uma_id=3D"0",
port_no=3D"0", rx-steering=3Drss, rx_csum_offload=3D"true",
tx_geneve_tso_offload=3D"true", tx_ip_csum_offload=3D"true",
tx_out_ip_csum_offload=3D"true", tx_out_udp_csum_offload=3D"true",
tx_sctp_csum_offload=3D"true", tx_tcp_csum_offload=3D"true",
tx_tcp_seg_offload=3D"true", tx_udp_csum_offload=3D"true",
tx_vxlan_tso_offload=3D"true"}
After modification in OVS:
status : {bus_info=3D"bus_name=3Dpci, vendor_id=3D8088, device=
_id=3D1001",
driver_name=3Dnet_txgbe, if_descr=3D"DPDK 23.11.0 net_txgbe", if_type=3D"6",
link_speed=3D"10Gbps", max_hash_mac_addrs=3D"4096", max_mac_addrs=3D"128",
max_rx_pktlen=3D"1618", max_rx_queues=3D"128", max_tx_queues=3D"128", max_v=
fs=3D"0",
max_vmdq_pools=3D"64", min_rx_bufsize=3D"1024", n_rxq=3D"2", n_txq=3D"5", n=
uma_id=3D"0",
port_no=3D"0", rx-steering=3Drss, rx_csum_offload=3D"true",
tx_geneve_tso_offload=3D"true", tx_ip_csum_offload=3D"true",
tx_out_ip_csum_offload=3D"true", tx_out_udp_csum_offload=3D"false",
tx_sctp_csum_offload=3D"true", tx_tcp_csum_offload=3D"true",
tx_tcp_seg_offload=3D"true", tx_udp_csum_offload=3D"true",
tx_vxlan_tso_offload=3D"true"}
diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
index
d7f0aa1f5835b5c51ed0a2c8cd84079f388ca9ce..1f50676e55687f6ccdaccb7f5403c8256=
9fb2041
100644
--- a/lib/netdev-dpdk.c
+++ b/lib/netdev-dpdk.c
@@ -2050,12 +2050,13 @@ dpdk_eth_offload_config(struct netdev_dpdk *dev,
}
if (!strcmp(info->driver_name, "net_i40e")
- || !strcmp(info->driver_name, "net_iavf")) {
+ || !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 port.",
+ "net/i40e or net/iavf or net_txgbe port.",
netdev_get_name(&dev->up));
info->tx_offload_capa &=3D ~RTE_ETH_TX_OFFLOAD_OUTER_UDP_CKSUM;
}
--=20
You are receiving this mail because:
You are the assignee for the bug.=
--17249343530.08A0a.4016770
Date: Thu, 29 Aug 2024 14:25:53 +0200
MIME-Version: 1.0
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://bugs.dpdk.org/
Auto-Submitted: auto-generated
X-Auto-Response-Suppress: All
"net_txgbe" have not implemented outer UDP checksum=
offload, but the capability flag has been set.
Product
DPDK
Version
24.07
Hardware
All
OS
All
Status
UNCONFIRMED
Severity
normal
Priority
Normal
Component
ethdev
Assignee
dev@dpdk.org
Reporter
junwang01@cestc.cn
Target Milestone
---
In OVS-DPDK, when using the Wangxu=
n RP1000 network card, I found that the card
supports outer UDP checksum offload according to the capabilities retrieved=
by
OVS-DPDK. However, in actual testing, the outer UDP checksum of the transmi=
tted
packets is incorrect. After I manually disabled
RTE_ETH_TX_OFFLOAD_OUTER_UDP_CKSUM in the OVS code, the traffic was normal.=
So,
does this mean that the card does not actually support outer UDP checksum
offload, but the capability is enabled in the DPDK code? Or is there a bug =
in
the implementation logic?
Before modification in OVS:
status : {bus_info=3D"bus_name=3Dpci, vendor_id=3D8088, d=
evice_id=3D1001",
driver_name=3Dnet_txgbe, if_descr=3D"DPDK 23.11.0 net_txgbe", if_=
type=3D"6",
link_speed=3D"10Gbps", max_hash_mac_addrs=3D"4096", max=
_mac_addrs=3D"128",
max_rx_pktlen=3D"1618", max_rx_queues=3D"128", max_tx_q=
ueues=3D"128", max_vfs=3D"0",
max_vmdq_pools=3D"64", min_rx_bufsize=3D"1024", n_rxq=
=3D"2", n_txq=3D"5", numa_id=3D"0",
port_no=3D"0", rx-steering=3Drss, rx_csum_offload=3D"true&qu=
ot;,
tx_geneve_tso_offload=3D"true", tx_ip_csum_offload=3D"true&q=
uot;,
tx_out_ip_csum_offload=3D"true", tx_out_udp_csum_offload=3D"=
true",
tx_sctp_csum_offload=3D"true", tx_tcp_csum_offload=3D"true&q=
uot;,
tx_tcp_seg_offload=3D"true", tx_udp_csum_offload=3D"true&quo=
t;,
tx_vxlan_tso_offload=3D"true"}
After modification in OVS:
status : {bus_info=3D"bus_name=3Dpci, vendor_id=3D8088, d=
evice_id=3D1001",
driver_name=3Dnet_txgbe, if_descr=3D"DPDK 23.11.0 net_txgbe", if_=
type=3D"6",
link_speed=3D"10Gbps", max_hash_mac_addrs=3D"4096", max=
_mac_addrs=3D"128",
max_rx_pktlen=3D"1618", max_rx_queues=3D"128", max_tx_q=
ueues=3D"128", max_vfs=3D"0",
max_vmdq_pools=3D"64", min_rx_bufsize=3D"1024", n_rxq=
=3D"2", n_txq=3D"5", numa_id=3D"0",
port_no=3D"0", rx-steering=3Drss, rx_csum_offload=3D"true&qu=
ot;,
tx_geneve_tso_offload=3D"true", tx_ip_csum_offload=3D"true&q=
uot;,
tx_out_ip_csum_offload=3D"true", tx_out_udp_csum_offload=3D"=
false",
tx_sctp_csum_offload=3D"true", tx_tcp_csum_offload=3D"true&q=
uot;,
tx_tcp_seg_offload=3D"true", tx_udp_csum_offload=3D"true&quo=
t;,
tx_vxlan_tso_offload=3D"true"}
diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c
index
d7f0aa1f5835b5c51ed0a2c8cd84079f388ca9ce..1f50676e55687f6ccdaccb7f5403c8256=
9fb2041
100644
--- a/lib/netdev-dpdk.c
+++ b/lib/netdev-dpdk.c
@@ -2050,12 +2050,13 @@ dpdk_eth_offload_config(struct netd=
ev_dpdk *dev,
}
if (!strcmp(info->driver_name, "net_i40e")
- || !strcmp(info->driver_name, "net_iavf")) {
+ || !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 port.",
+ "net/i40e or net/iavf or net_txgbe port.",
netdev_get_name(&dev->up));
info->tx_offload_capa &=3D ~RTE_ETH_TX_OFFLOAD_OUTER_UDP_CK=
SUM;
}