On 15/05/2025 10:28, David Marchand wrote: > On Thu, May 15, 2025 at 9:04 AM Roi Dayan via dev > <[email protected]> wrote: >> >> The callback is registered in netdev initialization but isn't >> unregistered in netdev destruct. Fix it. > > What is the issue exactly? > >> >> Fixes: 988fd4639149 ("netdev-dpdk: add support for the >> RTE_ETH_EVENT_INTR_RESET event.") >> Change-Id: I645170825523f5b0c83f5ad3af8ea4a61cb257de >> Signed-off-by: Roi Dayan <[email protected]> >> Acked-by: Eli Britstein <[email protected]> >> --- >> 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); > > This unregisters the callback for *all* DPDK ports, not just the port > associated to this OVS netdev. >
hmm, let me go over the patch again then. the issue is re-adding dpdk-port to a bridge We noticed hugepages allocation keeps increasing and not freed. we traced it to type INTR_USER_CALLBACK which is registered by this callback. > _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
