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 354D546364 for ; Fri, 7 Mar 2025 13:25:28 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2CF7E4029E; Fri, 7 Mar 2025 13:25:28 +0100 (CET) Received: from mail-wr1-f47.google.com (mail-wr1-f47.google.com [209.85.221.47]) by mails.dpdk.org (Postfix) with ESMTP id B41E540E34 for ; Fri, 7 Mar 2025 13:25:26 +0100 (CET) Received: by mail-wr1-f47.google.com with SMTP id ffacd0b85a97d-3912e96c8e8so953287f8f.2 for ; Fri, 07 Mar 2025 04:25:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741350326; x=1741955126; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=DdbExceH1Hzu6l3FBN2ZY0KdvlV+UEVPMtOT7l7P5jw=; b=fM24KWhioQg7hZPlFHdihS1ZoJ2IIuBb27KmXZo70iZyTA5r3BBFB70dC7VoPxCH1X 6pnA+QP4nbmt8rBMLMmdBl6UDOAGVqOMTH9iWKsKKSV+Ibq6RChvlIH/GC2XoANAfJr6 kx/N/DCYH/P2tczNlOOuaQPMktSjyjgXSr8SRI9vR3ooS9ZFbL+YoEkyLaWw7weJFP/j FSaa9oSWopGdivUby9bQJfSGme039DenwgHt8jYeaXcXIlgFdLVkZJXuROiNvEz2J1Tq 701XnpOGMl0k7Idp3E9Qbhu1ZnX7rwcAPcTZV7flVSN29RD83Y3HKA1Wy4Q2NP/AccBp G4nw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741350326; x=1741955126; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DdbExceH1Hzu6l3FBN2ZY0KdvlV+UEVPMtOT7l7P5jw=; b=U2kw00fc2tbFDpREqxT/M9VCu5kL+OOJ+JS7vub/n01icf+u/v7kZT3iPEDuDVjjKl cWTS4Trh7fVHt/LgvPEjMGf+SRlpoQaCepA4nxvxv0KlyTuFUskLF+l7C/uKnZush8MH 5vvrP59iTIDS4Mf2rl32IAQ+Vt+2bJVx046yrdARTVtbgDWVVKcLTi6asjmf/4n4qGyM n2c1jIBquzphQTpq2GS0FuG2I97WL9FSNgub8vd7vpQNrlSj1+z4G+jH0/9/PF5eslQE OM88ELs4puEoy391XmwvYXTEWBdSTIRK0d8rCuQQqzQHZeAn76gxZIaR+dH4uxWYniyI k6JA== X-Forwarded-Encrypted: i=1; AJvYcCXQfQVu85xbP3bvICgPMli9/qo64sfpn0cMkBNp8bJ4EQ0zdA/e0TfVdqnXzQkZkBQ0xNxoDnc=@dpdk.org X-Gm-Message-State: AOJu0YyLzmKP05Y+y1eGHXGF/0VwzjjoaW7gWCukAHdOSeqZ4VhYOFmP zVKb8WW5HcvEsdJ+imzqOwckmwMFlZa4auUXyVfV84AG83WfFSH8zj3V2Zvb X-Gm-Gg: ASbGncs2gakqsY6R2dG+5AQS7RYe+04UlFksiXa7w9fjHGx1yetbqxWyM0yaqKLlEZf fDBg7vI0Sxdh9dOSWlaOFVWjCZV80lVEGaayN7o5Ky3+Op6+AT7rIgqb6tVPXIG73TfLX7Ec/va s5fBaoh47jKnQqJgQOP+tDgB7Z7jk5omxGc5rJWDLSmuUgot7U+NjGoSHR4Og+11RijRbqTbgqP QWfT8x0GuFDP8Q2WVO5+3qjta8UYUIJipyBvSEuyTzOgTUG0cyl6xGybMH+gs4uDaZVVYgr6uhg d31PM99Z2ydEJ4FsPP+Ec6l3Jxi5MHhvK2yq57l1WcB176sGjPc= X-Google-Smtp-Source: AGHT+IEXWOLZRUbywwGn4KPG+CXDe61kbIvjIY0I+F0sbBDXlLXXXr7oO0RpZxrMXZKJVSVfvS86RQ== X-Received: by 2002:a5d:6c6d:0:b0:391:2b11:657 with SMTP id ffacd0b85a97d-39132da10f8mr2113042f8f.38.1741350326162; Fri, 07 Mar 2025 04:25:26 -0800 (PST) Received: from localhost ([2a01:4b00:d036:ae00:ff31:f049:bd38:f7cf]) by smtp.gmail.com with UTF8SMTPSA id ffacd0b85a97d-3912c0e2b8bsm5232797f8f.64.2025.03.07.04.25.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 07 Mar 2025 04:25:25 -0800 (PST) From: luca.boccassi@gmail.com To: Viacheslav Ovsiienko Cc: Dariusz Sosnowski , dpdk stable Subject: patch 'net/mlx5: fix hardware packet type translation' has been queued to stable release 22.11.8 Date: Fri, 7 Mar 2025 12:24:17 +0000 Message-ID: <20250307122431.1415551-18-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250307122431.1415551-1-luca.boccassi@gmail.com> References: <20250217170456.1068278-79-luca.boccassi@gmail.com> <20250307122431.1415551-1-luca.boccassi@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 22.11.8 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 03/09/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/bluca/dpdk-stable This queued commit can be viewed at: https://github.com/bluca/dpdk-stable/commit/33f0af6926e54403735a60243d69a44afb0630ee Thanks. Luca Boccassi --- >From 33f0af6926e54403735a60243d69a44afb0630ee Mon Sep 17 00:00:00 2001 From: Viacheslav Ovsiienko Date: Sun, 9 Feb 2025 16:01:06 +0200 Subject: [PATCH] net/mlx5: fix hardware packet type translation [ upstream commit ed9935258f5c3cbb07b2828b6072dec9be8c3891 ] Since ConnectX-8 NIC the hardware recognizes L4 protocol in the IP fragments if the IP offset is zero and reports the L4 protocol type in CQE fields. This case was not supported in the ptype translation table cause not report the ptype in the mbufs. Fixes: ea16068c0064 ("net/mlx5: fix L4 packet type support") Signed-off-by: Viacheslav Ovsiienko Acked-by: Dariusz Sosnowski --- drivers/net/mlx5/mlx5_rxtx.c | 80 ++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c index 54d410b513..6ed944fa78 100644 --- a/drivers/net/mlx5/mlx5_rxtx.c +++ b/drivers/net/mlx5/mlx5_rxtx.c @@ -118,8 +118,24 @@ mlx5_set_ptype_table(void) /* Fragmented */ (*p)[0x21] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | RTE_PTYPE_L4_FRAG; + (*p)[0x25] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0x29] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0x2d] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0x31] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; (*p)[0x22] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | RTE_PTYPE_L4_FRAG; + (*p)[0x26] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0x2a] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0x2e] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0x32] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; /* TCP */ (*p)[0x05] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | RTE_PTYPE_L4_TCP; @@ -145,8 +161,24 @@ mlx5_set_ptype_table(void) RTE_PTYPE_L4_NONFRAG; (*p)[0xa1] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | RTE_PTYPE_L4_FRAG; + (*p)[0xa5] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0xa9] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0xad] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0xb1] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; (*p)[0xa2] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | RTE_PTYPE_L4_FRAG; + (*p)[0xa6] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0xaa] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0xae] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; + (*p)[0xb2] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_L4_FRAG; (*p)[0x85] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | RTE_PTYPE_L4_TCP; (*p)[0x86] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | @@ -182,15 +214,63 @@ mlx5_set_ptype_table(void) (*p)[0x61] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | RTE_PTYPE_INNER_L4_FRAG; + (*p)[0x65] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0x69] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0x6d] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0x71] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; (*p)[0x62] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN | RTE_PTYPE_INNER_L4_FRAG; + (*p)[0x66] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0x6a] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0x6e] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0x72] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; (*p)[0xe1] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | RTE_PTYPE_INNER_L4_FRAG; + (*p)[0xe5] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0xe9] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0xed] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0xf1] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; (*p)[0xe2] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN | RTE_PTYPE_INNER_L4_FRAG; + (*p)[0xe6] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0xea] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0xee] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; + (*p)[0xf2] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN | + RTE_PTYPE_INNER_L4_FRAG; /* Tunneled - TCP */ (*p)[0x45] = RTE_PTYPE_L2_ETHER | RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN | -- 2.47.2 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2025-03-07 12:23:38.690420493 +0000 +++ 0018-net-mlx5-fix-hardware-packet-type-translation.patch 2025-03-07 12:23:38.022838760 +0000 @@ -1 +1 @@ -From ed9935258f5c3cbb07b2828b6072dec9be8c3891 Mon Sep 17 00:00:00 2001 +From 33f0af6926e54403735a60243d69a44afb0630ee Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit ed9935258f5c3cbb07b2828b6072dec9be8c3891 ] + @@ -12 +13,0 @@ -Cc: stable@dpdk.org @@ -21 +22 @@ -index eadadcdffb..9c075f6a56 100644 +index 54d410b513..6ed944fa78 100644