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 4B98D43CAD for ; Thu, 14 Mar 2024 01:12:51 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 456FA42E40; Thu, 14 Mar 2024 01:12:51 +0100 (CET) Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.51]) by mails.dpdk.org (Postfix) with ESMTP id 1AD5B42E73 for ; Thu, 14 Mar 2024 01:12:49 +0100 (CET) Received: by mail-wr1-f51.google.com with SMTP id ffacd0b85a97d-33e76d653b5so315862f8f.3 for ; Wed, 13 Mar 2024 17:12:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710375169; x=1710979969; 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=UsaoOGVULJdQViNEbhgiKc4a3Ob7h+I7ecWTBWOxLqM=; b=dipJpQlDslx7Fyy36dH6yuLgsEkp8gG4UbdL9YVEivQYMO0NP0jTVoIb6w9VTshEWG QRYyEDp4lj5JxyWQdk/F3usiToZhCmnXVU/abIk0KU2hMzlB8GYJE+gB1gQwhq7sNz2A gcWb6lo8zg9EvBkXkxl3KQA5Kw9+z3/4kZtS7nOghQAuCsM8SGZY+ABq4GFTOX4MFfQE LUFwGxRWxGELbk5uxBkxd1Si/8R0J5a1zFonJyaE14r4eCQnfn6WpCcfiUKCWtymV5+Y Aw9H86gN1JmfonaWQpBh+6927Z+wzoGgozflxOcjOsmw/yBk5TFifPBH6KDoHyaNiaBG 3Vpg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710375169; x=1710979969; 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=UsaoOGVULJdQViNEbhgiKc4a3Ob7h+I7ecWTBWOxLqM=; b=YsvcRv1gd1djDzQBfXcBFN1xrdWjl7ReN3lLPP36oYZwAAS3cKiYEz1ZGXIJ7qp07W zP19OLxelluJ05dTEin1IJFEJPD76Q/KzQTBY3Z1Ofw4mAAt0vHz7et3eFSqeD3fXyWk yZDeps1D0Oe10v1YF6+asbS4iBtBTzbAvuyaZnbCLgb/NgvfczElyqy308PxujzkdxHK U8JIqnQN2axPsQgJs9IwN+NQASBusnDutOBcjZXqajx3F94VIqF5txqTy6ORR9L1Ow+R uzxZGXzREPqEnPxo99oX5RXLbEiV2VpOtrEBsZ+LvEA1SZKzv7wuDgjr+T4MbPzPaWQW I5Mg== X-Forwarded-Encrypted: i=1; AJvYcCV5A2oI0oEol5YY1y4EUZxXkEyo/86d+vJoWSr7/AMIWYo2hsmLRNcfKC30Oug+EvbAQCA9TeRaO5wf4JeKGXg= X-Gm-Message-State: AOJu0YxFTs5YOUBIZPXFWKFZjJnJOyCwlFc/oDbGwHVTLNP7UAi31bsG drZDV4FAbrjAYy/78ONFIeTOKww0SPdC4GKwG93W0sPnpcMZUM1x0/pXM0RSBLk= X-Google-Smtp-Source: AGHT+IEz7SxCbHmMRAuv6cGGkOfpIgyD9ZzeDERAQRZOvp9NVHG4UazkroMsOd7jVd1Em9KcaTW/Tg== X-Received: by 2002:adf:e544:0:b0:33d:aaba:aa66 with SMTP id z4-20020adfe544000000b0033daabaaa66mr66197wrm.65.1710375168722; Wed, 13 Mar 2024 17:12:48 -0700 (PDT) Received: from localhost ([2a01:4b00:d036:ae00:7aef:1aaa:3dff:d546]) by smtp.gmail.com with ESMTPSA id d15-20020a5d644f000000b0033dc931eb06sm317866wrw.0.2024.03.13.17.12.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Mar 2024 17:12:48 -0700 (PDT) From: luca.boccassi@gmail.com To: Mingjin Ye Cc: Anatoly Burakov , dpdk stable Subject: patch 'bus/vdev: fix devargs in secondary process' has been queued to stable release 22.11.5 Date: Thu, 14 Mar 2024 00:09:48 +0000 Message-Id: <20240314000957.2810803-52-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240314000957.2810803-1-luca.boccassi@gmail.com> References: <20240307013159.1735343-102-luca.boccassi@gmail.com> <20240314000957.2810803-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.5 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/16/24. 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/ba823066bfc217927d1b4457565344e7e4dea20c Thanks. Luca Boccassi --- >From ba823066bfc217927d1b4457565344e7e4dea20c Mon Sep 17 00:00:00 2001 From: Mingjin Ye Date: Fri, 1 Sep 2023 07:24:09 +0000 Subject: [PATCH] bus/vdev: fix devargs in secondary process [ upstream commit 6666628362c94a0b567a39a0177539c12c97d999 ] When a device is created by a secondary process, an empty devargs is temporarily generated and bound to it. This causes the device to not be associated with the correct devargs, and the empty devargs are not released when the resource is freed. This patch fixes the issue by matching the devargs when inserting a device in secondary process. Fixes: dda987315ca2 ("vdev: make virtual bus use its device struct") Fixes: a16040453968 ("eal: extract vdev infra") Signed-off-by: Mingjin Ye Acked-by: Anatoly Burakov --- drivers/bus/vdev/vdev.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/drivers/bus/vdev/vdev.c b/drivers/bus/vdev/vdev.c index 05582f1727..14cf856237 100644 --- a/drivers/bus/vdev/vdev.c +++ b/drivers/bus/vdev/vdev.c @@ -263,6 +263,22 @@ alloc_devargs(const char *name, const char *args) return devargs; } +static struct rte_devargs * +vdev_devargs_lookup(const char *name) +{ + struct rte_devargs *devargs; + char dev_name[32]; + + RTE_EAL_DEVARGS_FOREACH("vdev", devargs) { + devargs->bus->parse(devargs->name, &dev_name); + if (strcmp(dev_name, name) == 0) { + VDEV_LOG(INFO, "devargs matched %s", dev_name); + return devargs; + } + } + return NULL; +} + static int insert_vdev(const char *name, const char *args, struct rte_vdev_device **p_dev, @@ -275,7 +291,11 @@ insert_vdev(const char *name, const char *args, if (name == NULL) return -EINVAL; - devargs = alloc_devargs(name, args); + if (rte_eal_process_type() == RTE_PROC_PRIMARY) + devargs = alloc_devargs(name, args); + else + devargs = vdev_devargs_lookup(name); + if (!devargs) return -ENOMEM; -- 2.39.2 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2024-03-14 00:09:23.090921392 +0000 +++ 0052-bus-vdev-fix-devargs-in-secondary-process.patch 2024-03-14 00:09:20.705617048 +0000 @@ -1 +1 @@ -From 6666628362c94a0b567a39a0177539c12c97d999 Mon Sep 17 00:00:00 2001 +From ba823066bfc217927d1b4457565344e7e4dea20c Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 6666628362c94a0b567a39a0177539c12c97d999 ] + @@ -16 +17,0 @@ -Cc: stable@dpdk.org