The callback is registered in netdev initialization but isn't unregistered in netdev destruct. Fix it.
Fixes: 988fd4639149 ("netdev-dpdk: add support for the RTE_ETH_EVENT_INTR_RESET event.") Change-Id: I645170825523f5b0c83f5ad3af8ea4a61cb257de Signed-off-by: Roi Dayan <r...@nvidia.com> Acked-by: Eli Britstein <el...@nvidia.com> --- lib/netdev-dpdk.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 549887b31373..e6d9b58f914e 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -1762,6 +1762,10 @@ common_destruct(struct netdev_dpdk *dev) static void dpdk_rx_steer_unconfigure(struct netdev_dpdk *); +static int +dpdk_eth_event_callback(dpdk_port_t port_id, enum rte_eth_event_type type, + void *param OVS_UNUSED, void *ret_param OVS_UNUSED); + static void netdev_dpdk_destruct(struct netdev *netdev) { @@ -1831,6 +1835,10 @@ netdev_dpdk_destruct(struct netdev *netdev) } } + rte_eth_dev_callback_unregister(RTE_ETH_ALL, + RTE_ETH_EVENT_INTR_RESET, + dpdk_eth_event_callback, NULL); + netdev_dpdk_clear_xstats(dev); free(dev->devargs); common_destruct(dev); -- 2.21.0 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev