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 54A4646211 for ; Thu, 13 Feb 2025 11:01:31 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 506DA42EE9; Thu, 13 Feb 2025 11:01:31 +0100 (CET) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mails.dpdk.org (Postfix) with ESMTP id 35B3742EE7 for ; Thu, 13 Feb 2025 11:01:30 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1739440889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=0BFkMYhWLOQhEsucHRSyq+mwtzEEq7eIaoG4AtRmk+g=; b=Fxcdv0aWQHni9VDBk1544rtOj71oIqlg7EEbYjtDZtYgrW/g2GbA9t94Wdg/RDr8uVptIC QWbSWY3NCzdwetYO2DbGJKzKbpPbQX5MGYMNfG49LHnSrb7cPmYmGpy6GtLkZuOaRsW/51 Qcn2L4DWfbtKeK8G/0m1ccrFv8UINPA= Received: from mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-588-7xdEJf_9P7aJ01WOy8hbsQ-1; Thu, 13 Feb 2025 05:01:28 -0500 X-MC-Unique: 7xdEJf_9P7aJ01WOy8hbsQ-1 X-Mimecast-MFC-AGG-ID: 7xdEJf_9P7aJ01WOy8hbsQ Received: from mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.93]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id B4572180034A; Thu, 13 Feb 2025 10:01:27 +0000 (UTC) Received: from rh.Home (unknown [10.45.224.21]) by mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 0D4351800365; Thu, 13 Feb 2025 10:01:25 +0000 (UTC) From: Kevin Traynor To: Rahul Bhansali Cc: dpdk stable Subject: patch 'net/cnxk: fix NIX send header L3 type' has been queued to stable release 24.11.2 Date: Thu, 13 Feb 2025 09:58:12 +0000 Message-ID: <20250213095933.362078-45-ktraynor@redhat.com> In-Reply-To: <20250213095933.362078-1-ktraynor@redhat.com> References: <20250213095933.362078-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.93 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: MMqDfQSx4q0_W3tYRco_qEP4EknqMHV6VYyRmu-8h04_1739440887 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit content-type: text/plain; charset="US-ASCII"; x-default=true X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Hi, FYI, your patch has been queued to stable release 24.11.2 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 02/17/25. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable/commit/d830d6989fb640d06f3bc62b263f9657fe3d4b40 Thanks. Kevin --- >From d830d6989fb640d06f3bc62b263f9657fe3d4b40 Mon Sep 17 00:00:00 2001 From: Rahul Bhansali Date: Thu, 30 Jan 2025 17:25:26 +0530 Subject: [PATCH] net/cnxk: fix NIX send header L3 type [ upstream commit 32c18e7364e30a8e43cc7cc6709a7ce606fa285e ] For small packets less than 55 bytes, SQ error interrupts are observed. When checksum offload flag is enabled and mbuf ol_flags are not set, then default L3 type will be set to IPv6 in vector processing. Based on this, HW will still validate for minimum header size and generate send header error if mismatch. To address this, will set default L3 type to none. Mbuf ol_flags RTE_MBUF_F_TX_IPV6 will set with offload feature TSO or L4 checksum only, so handled in corresponding routine. Fixes: f71b7dbbf04b ("net/cnxk: add vector Tx for CN10K") Fixes: e829e60c6917 ("net/cnxk: support Tx burst vector for CN20K") Fixes: 862e28128707 ("net/cnxk: add vector Tx for CN9K") Signed-off-by: Rahul Bhansali --- drivers/net/cnxk/cn10k_tx.h | 7 +++++-- drivers/net/cnxk/cn20k_tx.h | 7 +++++-- drivers/net/cnxk/cn9k_tx.h | 7 +++++-- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/drivers/net/cnxk/cn10k_tx.h b/drivers/net/cnxk/cn10k_tx.h index 7d9b259a5f..77f4e54cd8 100644 --- a/drivers/net/cnxk/cn10k_tx.h +++ b/drivers/net/cnxk/cn10k_tx.h @@ -1774,4 +1774,7 @@ cn10k_nix_prepare_tso(struct rte_mbuf *m, union nix_send_hdr_w1_u *w1, w0->lso_format = NIX_LSO_FORMAT_IDX_TSOV4 + !!(ol_flags & RTE_MBUF_F_TX_IPV6); w1->ol4type = NIX_SENDL4TYPE_TCP_CKSUM; + w1->ol3type = ((!!(ol_flags & RTE_MBUF_F_TX_IPV4)) << 1) + + ((!!(ol_flags & RTE_MBUF_F_TX_IPV6)) << 2) + + !!(ol_flags & RTE_MBUF_F_TX_IP_CKSUM); /* Handle tunnel tso */ @@ -2478,5 +2481,5 @@ again: const uint8x16_t tbl = { /* [0-15] = il4type:il3type */ - 0x04, /* none (IPv6 assumed) */ + 0x00, /* none */ 0x14, /* RTE_MBUF_F_TX_TCP_CKSUM (IPv6 assumed) */ 0x24, /* RTE_MBUF_F_TX_SCTP_CKSUM (IPv6 assumed) */ @@ -2682,5 +2685,5 @@ again: { /* [0-15] = il4type:il3type */ - 0x04, /* none (IPv6) */ + 0x00, /* none */ 0x14, /* RTE_MBUF_F_TX_TCP_CKSUM (IPv6) */ 0x24, /* RTE_MBUF_F_TX_SCTP_CKSUM (IPv6) */ diff --git a/drivers/net/cnxk/cn20k_tx.h b/drivers/net/cnxk/cn20k_tx.h index c731406529..8c3ba8326d 100644 --- a/drivers/net/cnxk/cn20k_tx.h +++ b/drivers/net/cnxk/cn20k_tx.h @@ -1734,4 +1734,7 @@ cn20k_nix_prepare_tso(struct rte_mbuf *m, union nix_send_hdr_w1_u *w1, union nix w0->lso_format = NIX_LSO_FORMAT_IDX_TSOV4 + !!(ol_flags & RTE_MBUF_F_TX_IPV6); w1->ol4type = NIX_SENDL4TYPE_TCP_CKSUM; + w1->ol3type = ((!!(ol_flags & RTE_MBUF_F_TX_IPV4)) << 1) + + ((!!(ol_flags & RTE_MBUF_F_TX_IPV6)) << 2) + + !!(ol_flags & RTE_MBUF_F_TX_IP_CKSUM); /* Handle tunnel tso */ @@ -2396,5 +2399,5 @@ again: const uint8x16_t tbl = { /* [0-15] = il4type:il3type */ - 0x04, /* none (IPv6 assumed) */ + 0x00, /* none */ 0x14, /* RTE_MBUF_F_TX_TCP_CKSUM (IPv6 assumed) */ 0x24, /* RTE_MBUF_F_TX_SCTP_CKSUM (IPv6 assumed) */ @@ -2596,5 +2599,5 @@ again: { /* [0-15] = il4type:il3type */ - 0x04, /* none (IPv6) */ + 0x00, /* none */ 0x14, /* RTE_MBUF_F_TX_TCP_CKSUM (IPv6) */ 0x24, /* RTE_MBUF_F_TX_SCTP_CKSUM (IPv6) */ diff --git a/drivers/net/cnxk/cn9k_tx.h b/drivers/net/cnxk/cn9k_tx.h index 9370985864..902a17860c 100644 --- a/drivers/net/cnxk/cn9k_tx.h +++ b/drivers/net/cnxk/cn9k_tx.h @@ -890,4 +890,7 @@ cn9k_nix_prepare_tso(struct rte_mbuf *m, union nix_send_hdr_w1_u *w1, w0->lso_format = NIX_LSO_FORMAT_IDX_TSOV4 + !!(ol_flags & RTE_MBUF_F_TX_IPV6); w1->ol4type = NIX_SENDL4TYPE_TCP_CKSUM; + w1->ol3type = ((!!(ol_flags & RTE_MBUF_F_TX_IPV4)) << 1) + + ((!!(ol_flags & RTE_MBUF_F_TX_IPV6)) << 2) + + !!(ol_flags & RTE_MBUF_F_TX_IP_CKSUM); /* Handle tunnel tso */ @@ -1403,5 +1406,5 @@ cn9k_nix_xmit_pkts_vector(void *tx_queue, struct rte_mbuf **tx_pkts, const uint8x16_t tbl = { /* [0-15] = il4type:il3type */ - 0x04, /* none (IPv6 assumed) */ + 0x00, /* none */ 0x14, /* RTE_MBUF_F_TX_TCP_CKSUM (IPv6 assumed) */ 0x24, /* RTE_MBUF_F_TX_SCTP_CKSUM (IPv6 assumed) */ @@ -1607,5 +1610,5 @@ cn9k_nix_xmit_pkts_vector(void *tx_queue, struct rte_mbuf **tx_pkts, { /* [0-15] = il4type:il3type */ - 0x04, /* none (IPv6) */ + 0x00, /* none */ 0x14, /* RTE_MBUF_F_TX_TCP_CKSUM (IPv6) */ 0x24, /* RTE_MBUF_F_TX_SCTP_CKSUM (IPv6) */ -- 2.48.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2025-02-12 17:29:39.383087187 +0000 +++ 0045-net-cnxk-fix-NIX-send-header-L3-type.patch 2025-02-12 17:29:34.338945858 +0000 @@ -1 +1 @@ -From 32c18e7364e30a8e43cc7cc6709a7ce606fa285e Mon Sep 17 00:00:00 2001 +From d830d6989fb640d06f3bc62b263f9657fe3d4b40 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 32c18e7364e30a8e43cc7cc6709a7ce606fa285e ] + @@ -20 +21,0 @@ -Cc: stable@dpdk.org