ethdev: fix callback unregister with wildcard argument list
authorRicardo Roldan <rroldan@bequant.com>
Tue, 7 Jan 2020 15:51:36 +0000 (16:51 +0100)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 17 Jan 2020 18:46:02 +0000 (19:46 +0100)
The function was checking -1 against the callback data instead of
the given cb_arg parameter.

Fixes: af75078fece3 ("first public release")
Cc: stable@dpdk.org
Signed-off-by: Ricardo Roldan <rroldan@bequant.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
lib/librte_ethdev/rte_ethdev.c

index 6e9cb24..aec2d0f 100644 (file)
@@ -4039,7 +4039,7 @@ rte_eth_dev_callback_unregister(uint16_t port_id,
                        next = TAILQ_NEXT(cb, next);
 
                        if (cb->cb_fn != cb_fn || cb->event != event ||
-                           (cb->cb_arg != (void *)-1 && cb->cb_arg != cb_arg))
+                           (cb_arg != (void *)-1 && cb->cb_arg != cb_arg))
                                continue;
 
                        /*