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 1219748AED for ; Wed, 12 Nov 2025 13:15:40 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E305C40281; Wed, 12 Nov 2025 13:15:39 +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 91AE640281 for ; Wed, 12 Nov 2025 13:15:38 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1762949738; 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:autocrypt:autocrypt; bh=5XcY16N9qO9KyRGINFRausVOkDR1/AZlZTpLVH7mUUU=; b=XQ7X5Mmu7R9MpUVJetHzNSa1P1XgNysnNlOPmDBzFJV9X29EPEn3o/rLYzaauTpOB+jm+s ANNHl1IIUHUEqPkaTPrJj+lmgFhGoplpA2ZJ3+ESnhqzRLjAmgxXTo/5XjBphxKb7RkiUw nKpXeYFY3OF3tOofOC5iChwcOPTuDLo= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-592-5HKghYx6NzGc2bnvDlB-0w-1; Wed, 12 Nov 2025 07:15:37 -0500 X-MC-Unique: 5HKghYx6NzGc2bnvDlB-0w-1 X-Mimecast-MFC-AGG-ID: 5HKghYx6NzGc2bnvDlB-0w_1762949736 Received: by mail-ej1-f69.google.com with SMTP id a640c23a62f3a-b7267543bc9so78218866b.2 for ; Wed, 12 Nov 2025 04:15:36 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762949736; x=1763554536; h=content-transfer-encoding:in-reply-to:autocrypt:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=5XcY16N9qO9KyRGINFRausVOkDR1/AZlZTpLVH7mUUU=; b=tUNcU5HvqHy5ogGq9Q9ySJsb5ZLmU4gx+r1At4W99KrdvpMkPF+28kQuDH/L75rvGd bLZxfjF+DU2eQAd+MPaDynYGwzYJyt8FbIzAcKalxq/BG/QQaCXhUCnsigYvAiFLAvQr 330MrEsQ5lsonD9O3MDCzZDReBgjPe/G/R14LCVo0mGIXYopPsXNtwg0AU7wKVeYMTpG AvtY5k8Avty4PLTTL/at7kPqMSB65fTs2Sm/aTUPGQagweS5qFPU+YLAupnvNA4/CAw0 CROteOBro9esuTeCdSQVP59nYt9Yf8Oj649JKSY4nJCrfRBWLkyWgFYdaQ8AoFkb8Fns zNRQ== X-Forwarded-Encrypted: i=1; AJvYcCW5ZUW7Ex9RfXitGrsocQ9c1UwSTNusYAuQbf1JTRDqZKXevZsp9TT4FHLoO6EXICgC+ScdkAY=@dpdk.org X-Gm-Message-State: AOJu0Yy19e4Dz1IK9GdFE3ypFyql4gzid0imi6wdrukcyWfN57UyCQpC uOCo2zORSQI5wW9TANuRVL9fMGKpUVcZMtot4Q/HGv2LRbDpxReB5tBoYlIaxAfINvlp7hX4Mr9 FiaBbjpLV5LvROscDyKDZXA8eNnXTV1KLqDTskkISxv7eobT+ X-Gm-Gg: ASbGncvx6LyNwgGv0fKf5U3ONviR1VFx4IwPVN0WFHCe42r5YgIvBy3InzdEoWMWOYW DDKTMkXYriWpwVvl3t1vswVZTXVtCP4ExdMK4pkTginVGuPZdXOQ2HwsdWHK+dEkmLoepcB1GiU elRFeAYOvs/Py7UOQKyOeY29SwYFEj7pz0w+M/oxsZjqaQI91L7ZNCLWIpo3VVEe92sTCpF6CWv b+Aov/acbyKUefUi+G8gbb8jQ3KYFwE4bj3VCEW9omsx28nzV1mdzYODmpbiBfA8+hAleVy11VI a4OX5T/Sd+9az/YV3XRfm+B34YKGwQV1EzbMh2dA9KNJNMvi41/HtW9udaJlbUaTNaHkEuQPSaD Q X-Received: by 2002:a17:906:730f:b0:b6d:5363:88a9 with SMTP id a640c23a62f3a-b733196865dmr260426566b.9.1762949735677; Wed, 12 Nov 2025 04:15:35 -0800 (PST) X-Google-Smtp-Source: AGHT+IF5ehej9C71bQUCYFEV9LMvIfLFw65zbadebnjVvWgAGswUDWYB52/7vNy3/xX8txj+MCXcNw== X-Received: by 2002:a17:906:730f:b0:b6d:5363:88a9 with SMTP id a640c23a62f3a-b733196865dmr260423066b.9.1762949735194; Wed, 12 Nov 2025 04:15:35 -0800 (PST) Received: from [192.168.0.56] ([78.16.130.67]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-641654e5592sm11045003a12.19.2025.11.12.04.15.33 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 12 Nov 2025 04:15:34 -0800 (PST) Message-ID: Date: Wed, 12 Nov 2025 12:15:33 +0000 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 24.11] net/mlx5/hws: fix ESP header match in strict mode To: Viacheslav Ovsiienko , stable@dpdk.org Cc: bluca@debian.org, Matan Azrad References: <20251112073550.920258-1-viacheslavo@nvidia.com> From: Kevin Traynor Autocrypt: addr=ktraynor@redhat.com; keydata= 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 In-Reply-To: <20251112073550.920258-1-viacheslavo@nvidia.com> X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: XFaFkthhYmqYsCKjt2ZOWV6IksqhKpSOg1RjNOmWSow_1762949736 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit 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 On 12/11/2025 07:35, Viacheslav Ovsiienko wrote: > [ upstream commit 4237d1efa6e3f7f18ba809aa2073640fb034ae8d ] > Hi Slava. I just noticed while checking this commit, there are two commits of the same name, and as result I only sent a note about one needing rebase. f2f75ffe14 net/mlx5/hws: fix ESP header match in strict mode https://git.dpdk.org/dpdk/commit/?id=f2f75ffe14 I sent this one in list of commits needing rebase, as the function did not exist. Not sure if that's something you want to do or just drop. 4237d1efa6 net/mlx5/hws: fix ESP header match in strict mode https://git.dpdk.org/dpdk/commit/?id=4237d1efa6 I missed to send this in the list needing rebase. It applied but not building, so I needed to remove. I saw other commit of same name in list of commits for rebase and assumed it was the same one. Now I have backport I will apply. thanks, Kevin. > The pattern like "eth / ipv6 / esp / end" matched on any IPv6 > packet in strict mode, because there was no implicit match on the > IP.proto forced. > > This patch adds the implicit match on IP.proto with value 50 (ESP) > and adds implicit match on UDP.dport with value 4500 for the case > ESP over UDP. > > Fixes: 81cf20a25abf ("net/mlx5/hws: support match on ESP item") > Cc: stable@dpdk.org > > Signed-off-by: Viacheslav Ovsiienko > Acked-by: Matan Azrad > --- > drivers/net/mlx5/hws/mlx5dr_definer.c | 29 +++++++++++++++++++++++++++ > 1 file changed, 29 insertions(+) > > diff --git a/drivers/net/mlx5/hws/mlx5dr_definer.c b/drivers/net/mlx5/hws/mlx5dr_definer.c > index 4af24c788a..25d7f729c5 100644 > --- a/drivers/net/mlx5/hws/mlx5dr_definer.c > +++ b/drivers/net/mlx5/hws/mlx5dr_definer.c > @@ -14,6 +14,7 @@ > #define UDP_VXLAN_PORT 4789 > #define UDP_VXLAN_GPE_PORT 4790 > #define UDP_GTPU_PORT 2152 > +#define UDP_ESP_PORT 4500 > #define UDP_PORT_MPLS 6635 > #define UDP_GENEVE_PORT 6081 > #define UDP_ROCEV2_PORT 4791 > @@ -230,6 +231,8 @@ struct mlx5dr_definer_conv_data { > X(SET_BE16, nvgre_protocol, v->protocol, rte_flow_item_nvgre) \ > X(SET_BE32P, nvgre_dw1, &v->tni[0], rte_flow_item_nvgre) \ > X(SET, meter_color, rte_col_2_mlx5_col(v->color), rte_flow_item_meter_color) \ > + X(SET, ipsec_protocol, IPPROTO_ESP, rte_flow_item_esp) \ > + X(SET, ipsec_udp_port, UDP_ESP_PORT, rte_flow_item_esp) \ > X(SET_BE32, ipsec_spi, v->hdr.spi, rte_flow_item_esp) \ > X(SET_BE32, ipsec_sequence_number, v->hdr.seq, rte_flow_item_esp) \ > X(SET, ib_l4_udp_port, UDP_ROCEV2_PORT, rte_flow_item_ib_bth) \ > @@ -2804,6 +2807,32 @@ mlx5dr_definer_conv_item_esp(struct mlx5dr_definer_conv_data *cd, > const struct rte_flow_item_esp *m = item->mask; > struct mlx5dr_definer_fc *fc; > > + /* To match on ESP we must match on ip_protocol and optionally on l4_dport */ > + if (!cd->relaxed) { > + bool over_udp; > + > + fc = &cd->fc[DR_CALC_FNAME(IP_PROTOCOL, false)]; > + over_udp = fc->tag_set == &mlx5dr_definer_udp_protocol_set; > + > + if (over_udp) { > + fc = &cd->fc[DR_CALC_FNAME(L4_DPORT, false)]; > + if (!fc->tag_set) { > + fc->item_idx = item_idx; > + fc->tag_mask_set = &mlx5dr_definer_ones_set; > + fc->tag_set = &mlx5dr_definer_ipsec_udp_port_set; > + DR_CALC_SET(fc, eth_l4, destination_port, false); > + } > + } else { > + fc = &cd->fc[DR_CALC_FNAME(IP_PROTOCOL, false)]; > + if (!fc->tag_set) { > + fc->item_idx = item_idx; > + fc->tag_set = &mlx5dr_definer_ipsec_protocol_set; > + fc->tag_mask_set = &mlx5dr_definer_ones_set; > + DR_CALC_SET(fc, eth_l3, protocol_next_header, false); > + } > + } > + } > + > if (!m) > return 0; > if (m->hdr.spi) {