When removing a rte_device on a port-based request,
all the sibling ports must be marked as closed.
The iterator loop can be simplified by using the dedicated macro.

Signed-off-by: Thomas Monjalon <tho...@monjalon.net>
---
 app/test-pmd/testpmd.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
index 98c1baa8b1..fcc479aa39 100644
--- a/app/test-pmd/testpmd.c
+++ b/app/test-pmd/testpmd.c
@@ -2361,9 +2361,7 @@ detach_port_device(portid_t port_id)
                return;
        }
 
-       for (sibling = 0; sibling < RTE_MAX_ETHPORTS; sibling++) {
-               if (rte_eth_devices[sibling].device != dev)
-                       continue;
+       RTE_ETH_FOREACH_DEV_SIBLING(sibling, port_id) {
                /* reset mapping between old ports and removed device */
                rte_eth_devices[sibling].device = NULL;
                if (ports[sibling].port_status != RTE_PORT_CLOSED) {
-- 
2.20.1

Reply via email to