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 A3066468E4 for ; Thu, 12 Jun 2025 23:10:01 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9E42B42E4F; Thu, 12 Jun 2025 23:10:01 +0200 (CEST) Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) by mails.dpdk.org (Postfix) with ESMTP id 3F89342DD9 for ; Thu, 12 Jun 2025 23:10:00 +0200 (CEST) Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-442f9043f56so8523145e9.0 for ; Thu, 12 Jun 2025 14:10:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1749762600; x=1750367400; 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=fCyJIFT+Md61k/MQ1CT3OXQz854Vsvw9RyriBJSEeFo=; b=EtwRDGW27le3ovvAo+gFQr4T49/KPMm/QfQxl20S4S4HlnIGXnskzhBe652cQEobOB Chmh9OepARySi9xkcb8NR1vqBSqGV7dt03Zr0SOiwDVJS3W0Wgev7j2tVQOG/VIS+gTz QcS3taw+Hz9R/USXVPeva5MB0U5v2ZZ4lsXfM67WpggZqBhlfoOF6e2q9rzY+3+7z3Zg 5iCVJWkkdWtkNJjOYEXoO/89LLUZDKjJPj1r5T3QUD/uwuDx0D0ZDVhYJbio2Vbyrt9/ 9Gwyk+RrEurUqCabr9tPgmIU1WzWrlkr0c4bB48zGrsxdSV6aGc7URMciMVrJTKrmn8Q RqCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749762600; x=1750367400; 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=fCyJIFT+Md61k/MQ1CT3OXQz854Vsvw9RyriBJSEeFo=; b=aLEiTS2yGs3DoUSuoPRdWTklpwgFsD/ZC8GFoiLMo9HGskcn+HkwGoCoYD2x5LFKT2 Y9/M+fwLTNjHyLjR0jbQLGZ257CUCEReVKs6JogwuSJDMK7FqUpLu1CMXH2Mu3ulj7Cn Nh1DtUKpkP03A3kqlHCgYO0W9VBD5RK+AhUgORv5lWGhohozxk7x4/3ftRJZ4PgTgh0G KNWoyZJhDW2A7a5IWuIboDdMjW7DOt/PJGCJLnu7jOemg699rxtTKWEVjCQRSkKqtD8n 94nHckia+DcsZMiFIlc7xS2fLeukOQZsQW5YTSUqEx9Oxb460LKQSNfc4Z4fWrS1zrB8 a5Mg== X-Gm-Message-State: AOJu0YzmOlLAmz2CoZgfnAPnHs2fqedVnhAp0FX958v7VCtWL6YVJPwB ySjYzcaPhB74AfBpcNCvr7LamvSkUl51WR5rbMI+FD0n99gfV4js2/ED+MroTf22 X-Gm-Gg: ASbGncuR2/Maj6iSqO5JGy5nCzCDX0/ENqzWgya8DRhTgmIR6mb+1CFhw3STOfbWDDs czb5bUuZy5uhHwDjvYm4VRNRi+bCTqgGRB/C8ZxBHiSQiaAvocOdx1v0w/+Bt6suV3jXpCt5eDX XyiqV0GpRAf9L0pbx+cC+j6cbAPmEOfWjrJhjVQ79jfatrK0NBeuCax/Ie0weOPr4ctb/nOMqoa Xpq0sGHgR/n2+RKJGOWkS0XSrMiFNbTjQVifaDjE0gotuwRFDJfFiVHycoETyXm+kk5khclArRO vs0WxwKxo879hbLkNQ0mi6EZLw4XyowwwtsiFfk1RhKZHkHnR909gtZxfktOLQufCQlNyVuZdPd Hivw= X-Google-Smtp-Source: AGHT+IEiwHhfNEUA/AhpnCdFHVPgSFzuWLKa7uoOeJnqeyYEW/MWxUt8CzWsmU3YEvXkbr3RKwFqHg== X-Received: by 2002:a05:600c:3b1c:b0:43d:db5:7af8 with SMTP id 5b1f17b1804b1-45334ad8ec8mr4838425e9.21.1749762599669; Thu, 12 Jun 2025 14:09:59 -0700 (PDT) Received: from localhost ([2a01:4b00:d036:ae00:f2df:571a:ae4c:bef2]) by smtp.gmail.com with UTF8SMTPSA id ffacd0b85a97d-3a568a633ddsm397020f8f.26.2025.06.12.14.09.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 14:09:59 -0700 (PDT) From: luca.boccassi@gmail.com To: Long Li Cc: dpdk stable Subject: patch 'net/mana: check vendor ID when probing RDMA device' has been queued to stable release 22.11.9 Date: Thu, 12 Jun 2025 22:06:59 +0100 Message-ID: <20250612210733.2506558-42-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250612210733.2506558-1-luca.boccassi@gmail.com> References: <20250612210733.2506558-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.9 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 06/14/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/f3f71fde2d06d028bc41f3a70a958a79a3c19fe5 Thanks. Luca Boccassi --- >From f3f71fde2d06d028bc41f3a70a958a79a3c19fe5 Mon Sep 17 00:00:00 2001 From: Long Li Date: Mon, 12 May 2025 14:52:02 -0700 Subject: [PATCH] net/mana: check vendor ID when probing RDMA device [ upstream commit be4ed96378811e572860cac558bff54b5c361992 ] The RDMA kernel driver may expose two MANA RDMA devices, for RC and RAW QP types. The purpose is to support fast service mode at SOC. Depending on kernel version, the probe may fail if DPDK picks up the wrong device. Add check for vendor_part_id and RAW QP capability when probing the MANA device. This check is compatible with all kernel versions. Fixes: 517ed6e2d590 ("net/mana: add basic driver with build environment") Signed-off-by: Long Li --- drivers/net/mana/mana.c | 14 ++++++++++++++ drivers/net/mana/mana.h | 4 ++++ 2 files changed, 18 insertions(+) diff --git a/drivers/net/mana/mana.c b/drivers/net/mana/mana.c index 57325eb528..3412ad586b 100644 --- a/drivers/net/mana/mana.c +++ b/drivers/net/mana/mana.c @@ -1393,6 +1393,20 @@ mana_pci_probe_mac(struct rte_pci_device *pci_dev, continue; } + if (dev_attr.orig_attr.vendor_part_id) { + if (dev_attr.orig_attr.vendor_part_id != + GDMA_DEVICE_MANA) { + DRV_LOG(INFO, "Skip device vendor part id %x", + dev_attr.orig_attr.vendor_part_id); + continue; + } + if (!dev_attr.raw_packet_caps) { + DRV_LOG(INFO, + "Skip device without RAW support"); + continue; + } + } + for (port = 1; port <= dev_attr.orig_attr.phys_port_cnt; port++) { struct rte_ether_addr addr; diff --git a/drivers/net/mana/mana.h b/drivers/net/mana/mana.h index 579e6063ab..ffeef6e533 100644 --- a/drivers/net/mana/mana.h +++ b/drivers/net/mana/mana.h @@ -12,6 +12,10 @@ struct mana_shared_data { rte_atomic32_t secondary_cnt; }; +/* vendor_part_id returned from ibv_query_device */ +#define GDMA_DEVICE_MANA 2 +#define GDMA_DEVICE_MANA_IB 3 + #define MIN_RX_BUF_SIZE 1024 #define MAX_FRAME_SIZE RTE_ETHER_MAX_LEN #define MANA_MAX_MAC_ADDR 1 -- 2.47.2 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2025-06-12 22:06:25.437754411 +0100 +++ 0042-net-mana-check-vendor-ID-when-probing-RDMA-device.patch 2025-06-12 22:06:23.870044637 +0100 @@ -1 +1 @@ -From be4ed96378811e572860cac558bff54b5c361992 Mon Sep 17 00:00:00 2001 +From f3f71fde2d06d028bc41f3a70a958a79a3c19fe5 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit be4ed96378811e572860cac558bff54b5c361992 ] + @@ -14 +15,0 @@ -Cc: stable@dpdk.org @@ -23 +24 @@ -index 2934da29f7..c42a987a30 100644 +index 57325eb528..3412ad586b 100644 @@ -26 +27 @@ -@@ -1490,6 +1490,20 @@ mana_pci_probe_mac(struct rte_pci_device *pci_dev, +@@ -1393,6 +1393,20 @@ mana_pci_probe_mac(struct rte_pci_device *pci_dev, @@ -48 +49 @@ -index 855d98911b..6309cae76b 100644 +index 579e6063ab..ffeef6e533 100644 @@ -52 +53 @@ - RTE_ATOMIC(uint32_t) secondary_cnt; + rte_atomic32_t secondary_cnt; @@ -59 +59,0 @@ - #define MANA_MAX_MTU 9000 @@ -60,0 +61 @@ + #define MAX_FRAME_SIZE RTE_ETHER_MAX_LEN