patch 'bus/pci: fix resource leak in secondary process' has been queued to stable release 24.11.4

Kevin Traynor ktraynor at redhat.com
Fri Oct 31 15:34:13 CET 2025


Hi,

FYI, your patch has been queued to stable release 24.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 11/05/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/9d8103fda92ef6adf08e8ed6740bed8fde068f5b

Thanks.

Kevin

---
>From 9d8103fda92ef6adf08e8ed6740bed8fde068f5b Mon Sep 17 00:00:00 2001
From: Anatoly Burakov <anatoly.burakov at intel.com>
Date: Fri, 24 Oct 2025 10:18:24 +0100
Subject: [PATCH] bus/pci: fix resource leak in secondary process

[ upstream commit 6ca08d36ba7310edfe96207b299f79221b7e2d37 ]

Right after setting up VFIO device, we attempt to fill region information.
This operation can fail, and if it does, we do not release the device fd.
Fix the control flow to free the device fd if getting region info failed.

Fixes: 4b741542ecde ("bus/pci: avoid depending on private kernel value")

Signed-off-by: Anatoly Burakov <anatoly.burakov at intel.com>
---
 drivers/bus/pci/linux/pci_vfio.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/bus/pci/linux/pci_vfio.c b/drivers/bus/pci/linux/pci_vfio.c
index 5317170231..eb579d21bf 100644
--- a/drivers/bus/pci/linux/pci_vfio.c
+++ b/drivers/bus/pci/linux/pci_vfio.c
@@ -948,5 +948,5 @@ pci_vfio_map_resource_secondary(struct rte_pci_device *dev)
 	int vfio_dev_fd;
 	struct rte_pci_addr *loc = &dev->addr;
-	int i, j, ret;
+	int j, ret, i = 0;
 	struct mapped_pci_resource *vfio_res = NULL;
 	struct mapped_pci_res_list *vfio_res_list =
@@ -986,5 +986,5 @@ pci_vfio_map_resource_secondary(struct rte_pci_device *dev)
 	ret = pci_vfio_fill_regions(dev, vfio_dev_fd, &device_info);
 	if (ret)
-		return ret;
+		goto err_vfio_dev_fd;
 
 	/* map BARs */
-- 
2.51.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2025-10-31 13:53:56.152183769 +0000
+++ 0131-bus-pci-fix-resource-leak-in-secondary-process.patch	2025-10-31 13:53:52.327524277 +0000
@@ -1 +1 @@
-From 6ca08d36ba7310edfe96207b299f79221b7e2d37 Mon Sep 17 00:00:00 2001
+From 9d8103fda92ef6adf08e8ed6740bed8fde068f5b Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 6ca08d36ba7310edfe96207b299f79221b7e2d37 ]
+
@@ -11 +12,0 @@
-Cc: stable at dpdk.org
@@ -19 +20 @@
-index c63721dd61..8562fdcc6b 100644
+index 5317170231..eb579d21bf 100644
@@ -22 +23 @@
-@@ -933,5 +933,5 @@ pci_vfio_map_resource_secondary(struct rte_pci_device *dev)
+@@ -948,5 +948,5 @@ pci_vfio_map_resource_secondary(struct rte_pci_device *dev)
@@ -29 +30 @@
-@@ -969,5 +969,5 @@ pci_vfio_map_resource_secondary(struct rte_pci_device *dev)
+@@ -986,5 +986,5 @@ pci_vfio_map_resource_secondary(struct rte_pci_device *dev)



More information about the stable mailing list