From c7fe1eea8a74dbe756596d9e798662f0b2c48885 Mon Sep 17 00:00:00 2001 From: Stephen Hemminger Date: Thu, 6 Jul 2017 08:28:10 -0700 Subject: [PATCH] bus: simplify finding starting point A separate boolean variable is not necessary when searching for starting point in find_device. Just use the passed argument as its own flag value. Signed-off-by: Stephen Hemminger --- drivers/bus/fslmc/fslmc_bus.c | 6 ++---- lib/librte_eal/common/eal_common_bus.c | 6 ++---- lib/librte_eal/common/eal_common_pci.c | 6 ++---- lib/librte_eal/common/eal_common_vdev.c | 6 ++---- 4 files changed, 8 insertions(+), 16 deletions(-) diff --git a/drivers/bus/fslmc/fslmc_bus.c b/drivers/bus/fslmc/fslmc_bus.c index 1e3bbeeb0a..88b969c073 100644 --- a/drivers/bus/fslmc/fslmc_bus.c +++ b/drivers/bus/fslmc/fslmc_bus.c @@ -111,12 +111,10 @@ rte_fslmc_find_device(const struct rte_device *start, rte_dev_cmp_t cmp, const void *data) { struct rte_dpaa2_device *dev; - bool start_found = !start; TAILQ_FOREACH(dev, &rte_fslmc_bus.device_list, next) { - if (!start_found) { - if (&dev->device == start) - start_found = 1; + if (start && &dev->device == start) + start = NULL; /* starting point found */ continue; } diff --git a/lib/librte_eal/common/eal_common_bus.c b/lib/librte_eal/common/eal_common_bus.c index 87b0c6e6fa..997009d2b8 100644 --- a/lib/librte_eal/common/eal_common_bus.c +++ b/lib/librte_eal/common/eal_common_bus.c @@ -154,12 +154,10 @@ rte_bus_find(const struct rte_bus *start, rte_bus_cmp_t cmp, const void *data) { struct rte_bus *bus = NULL; - bool start_found = !start; TAILQ_FOREACH(bus, &rte_bus_list, next) { - if (!start_found) { - if (bus == start) - start_found = 1; + if (start && bus == start) { + start = NULL; /* starting point found */ continue; } if (cmp(bus, data) == 0) diff --git a/lib/librte_eal/common/eal_common_pci.c b/lib/librte_eal/common/eal_common_pci.c index 5ee100e673..7ed259b09c 100644 --- a/lib/librte_eal/common/eal_common_pci.c +++ b/lib/librte_eal/common/eal_common_pci.c @@ -491,12 +491,10 @@ pci_find_device(const struct rte_device *start, rte_dev_cmp_t cmp, const void *data) { struct rte_pci_device *dev; - bool start_found = !start; FOREACH_DEVICE_ON_PCIBUS(dev) { - if (!start_found) { - if (&dev->device == start) - start_found = 1; + if (start && &dev->device == start) { + start = NULL; /* starting point found */ continue; } if (cmp(&dev->device, data) == 0) diff --git a/lib/librte_eal/common/eal_common_vdev.c b/lib/librte_eal/common/eal_common_vdev.c index baf3c5bfa2..9ec62f4d4d 100644 --- a/lib/librte_eal/common/eal_common_vdev.c +++ b/lib/librte_eal/common/eal_common_vdev.c @@ -342,12 +342,10 @@ vdev_find_device(const struct rte_device *start, rte_dev_cmp_t cmp, const void *data) { struct rte_vdev_device *dev; - bool start_found = !start; TAILQ_FOREACH(dev, &vdev_device_list, next) { - if (start_found == 0) { - if (&dev->device == start) - start_found = 1; + if (start && &dev->device == start) { + start = NULL; continue; } if (cmp(&dev->device, data) == 0) -- 2.20.1