net/bnxt: fix outer UDP cksum Rx offload capability

Message ID 20201217192431.1965693-1-lance604@gmail.com (mailing list archive)
State Accepted, archived
Delegated to: Ajit Khaparde
Headers
Series net/bnxt: fix outer UDP cksum Rx offload capability |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-broadcom-Functional success Functional Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-abi-testing success Testing PASS
ci/iol-testing success Testing PASS

Commit Message

Lance Richardson Dec. 17, 2020, 7:24 p.m. UTC
  From: Lance Richardson <lance.richardson@broadcom.com>

Rx outer UDP checksum offload has been supported for
some time, but this has not been advertised in offload
capability flags. Fix this, and allow vector mode
receive to be enabled when DEV_RX_OFFLOAD_OUTER_UDP_CKSUM
is requested.

Fixes: 04a681426d49 ("net/bnxt: fix L4 checksum error indication in Rx")
Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
Cc: stable@dpdk.org
---
 drivers/net/bnxt/bnxt.h        | 1 +
 drivers/net/bnxt/bnxt_ethdev.c | 1 +
 2 files changed, 2 insertions(+)
  

Comments

Ajit Khaparde Dec. 17, 2020, 11:51 p.m. UTC | #1
On Thu, Dec 17, 2020 at 11:24 AM Lance Richardson
<h.lance.richardson@gmail.com> wrote:
>
> From: Lance Richardson <lance.richardson@broadcom.com>
>
> Rx outer UDP checksum offload has been supported for
> some time, but this has not been advertised in offload
> capability flags. Fix this, and allow vector mode
> receive to be enabled when DEV_RX_OFFLOAD_OUTER_UDP_CKSUM
> is requested.
>
> Fixes: 04a681426d49 ("net/bnxt: fix L4 checksum error indication in Rx")
> Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
> Cc: stable@dpdk.org

Patch applied to dpdk-next-net-brcm. Thanks

> ---
>  drivers/net/bnxt/bnxt.h        | 1 +
>  drivers/net/bnxt/bnxt_ethdev.c | 1 +
>  2 files changed, 2 insertions(+)
>
> diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h
> index 07d39ee937..ad7d59458c 100644
> --- a/drivers/net/bnxt/bnxt.h
> +++ b/drivers/net/bnxt/bnxt.h
> @@ -583,6 +583,7 @@ struct bnxt_rep_info {
>                                      DEV_RX_OFFLOAD_UDP_CKSUM | \
>                                      DEV_RX_OFFLOAD_TCP_CKSUM | \
>                                      DEV_RX_OFFLOAD_OUTER_IPV4_CKSUM | \
> +                                    DEV_RX_OFFLOAD_OUTER_UDP_CKSUM | \
>                                      DEV_RX_OFFLOAD_JUMBO_FRAME | \
>                                      DEV_RX_OFFLOAD_KEEP_CRC | \
>                                      DEV_RX_OFFLOAD_VLAN_EXTEND | \
> diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
> index 9d5c8aa0f8..a3035def5e 100644
> --- a/drivers/net/bnxt/bnxt_ethdev.c
> +++ b/drivers/net/bnxt/bnxt_ethdev.c
> @@ -1179,6 +1179,7 @@ bnxt_receive_function(struct rte_eth_dev *eth_dev)
>                 DEV_RX_OFFLOAD_UDP_CKSUM |
>                 DEV_RX_OFFLOAD_TCP_CKSUM |
>                 DEV_RX_OFFLOAD_OUTER_IPV4_CKSUM |
> +               DEV_RX_OFFLOAD_OUTER_UDP_CKSUM |
>                 DEV_RX_OFFLOAD_RSS_HASH |
>                 DEV_RX_OFFLOAD_VLAN_FILTER)) &&
>             !BNXT_TRUFLOW_EN(bp) && BNXT_NUM_ASYNC_CPR(bp) &&
> --
> 2.25.1
>
  

Patch

diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h
index 07d39ee937..ad7d59458c 100644
--- a/drivers/net/bnxt/bnxt.h
+++ b/drivers/net/bnxt/bnxt.h
@@ -583,6 +583,7 @@  struct bnxt_rep_info {
 				     DEV_RX_OFFLOAD_UDP_CKSUM | \
 				     DEV_RX_OFFLOAD_TCP_CKSUM | \
 				     DEV_RX_OFFLOAD_OUTER_IPV4_CKSUM | \
+				     DEV_RX_OFFLOAD_OUTER_UDP_CKSUM | \
 				     DEV_RX_OFFLOAD_JUMBO_FRAME | \
 				     DEV_RX_OFFLOAD_KEEP_CRC | \
 				     DEV_RX_OFFLOAD_VLAN_EXTEND | \
diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index 9d5c8aa0f8..a3035def5e 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -1179,6 +1179,7 @@  bnxt_receive_function(struct rte_eth_dev *eth_dev)
 		DEV_RX_OFFLOAD_UDP_CKSUM |
 		DEV_RX_OFFLOAD_TCP_CKSUM |
 		DEV_RX_OFFLOAD_OUTER_IPV4_CKSUM |
+		DEV_RX_OFFLOAD_OUTER_UDP_CKSUM |
 		DEV_RX_OFFLOAD_RSS_HASH |
 		DEV_RX_OFFLOAD_VLAN_FILTER)) &&
 	    !BNXT_TRUFLOW_EN(bp) && BNXT_NUM_ASYNC_CPR(bp) &&