From mboxrd@z Thu Jan 1 00:00:00 1970 From: Darek Stojaczyk Subject: [PATCH] eal: fixup hotplugging an already present device Date: Thu, 25 Oct 2018 12:51:01 +0200 Message-ID: <20181025105101.137701-1-dariusz.stojaczyk@intel.com> Cc: Darek Stojaczyk , thomas@monjalon.net, stable@dpdk.org To: dev@dpdk.org Return-path: List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" We were returning rc = -1 from a device probing function whenever the provided device was already probed before. This basically broke hotplugging a device in secondary process when the same device was already hotplugged in the primary. To fix it, just return 0 instead of -1. I believe this is the originally intented behavior. Fixes: e9d159c3d534 ("eal: allow probing a device again") Cc: thomas@monjalon.net Cc: stable@dpdk.org Signed-off-by: Darek Stojaczyk --- lib/librte_eal/common/eal_common_dev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/librte_eal/common/eal_common_dev.c b/lib/librte_eal/common/eal_common_dev.c index 6ac3ee859..75b83418c 100644 --- a/lib/librte_eal/common/eal_common_dev.c +++ b/lib/librte_eal/common/eal_common_dev.c @@ -222,7 +222,7 @@ local_dev_probe(const char *devargs, struct rte_device **new_dev) ret = dev->bus->plug(dev); if (ret) { if (rte_dev_is_probed(dev)) /* if already succeeded earlier */ - return ret; /* no rollback */ + return 0; /* no rollback */ RTE_LOG(ERR, EAL, "Driver cannot attach the device (%s)\n", dev->name); goto err_devarg; -- 2.17.1