Hi, I am integrating my DPDK app (using DPDK version 22.11) with Netvsc PMD. I was testing the use case of VF removal with the DPDK app. I registered for hotplug notification in the DPDK app and enabled DPDK logs. I see the APIs being invoked for VF removal from the logs below: 2024-07-25T17:28:13.317 |13590| MSG [NET] dpdk_log_write:112 hn_eth_rmv_event_callback(): Removing VF portid 0 2024-07-25T17:28:13.318 |13590| MSG [NET] dpdk_log_write:112 EAL: Ignoring uevent 'remove@ /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:07/VMBUS:01/80033a99-bc5e-43c7-aeea-e5773d4414d2/pcibc5e:00/bc5e:00:02.0/infiniband/mlx5_0' 2024-07-25T17:28:13.318 |13590| MSG [NET] dpdk_log_write:112 hn_nvs_set_datapath(): set datapath Synthetic 2024-07-25T17:28:13.318 |13590| MSG [NET] dpdk_log_write:112 hn_remove_delayed(): Start to remove port 0 2024-07-25T17:28:13.319 |13590| MSG [NET] dpdk_log_write:112 mlx5_net: port 0 stopping device 2024-07-25T17:28:13.319 |13590| MSG [NET] dpdk_log_write:112 mlx5_common: mlx5 list NIC_ingress_0_0_matcher_list entry 0x10c9e6300 removed. 2024-07-25T17:28:13.319 |13590| MSG [NET] dpdk_log_write:112 mlx5_common: mlx5 list hrxq entry 0x10c942f00 removed. 2024-07-25T17:28:13.319 |13590| MSG [NET] dpdk_log_write:112 mlx5_common: mlx5 list NIC_ingress_0_0_matcher_list entry 0x10c9e6a40 removed. 2024-07-25T17:28:13.319 |13590| MSG [NET] dpdk_log_write:112 mlx5_common: mlx5 list mlx5_0_flow_table entry 0x17fdc9040 removed. 2024-07-25T17:28:13.319 |13590| MSG [NET] dpdk_log_write:112 mlx5_net: port 0: 0 flows flushed before stopping 2024-07-25T17:28:13.320 |13590| MSG [NET] dpdk_log_write:112 mlx5_net: port 0 Tx queue 0 freeing WRs 2024-07-25T17:28:13.321 |13590| MSG [NET] dpdk_log_write:112 mlx5_net: port 0 Rx queue 0 freeing 8192 WRs 2024-07-25T17:28:13.321 |13590| MSG [NET] dpdk_log_write:112 mlx5_net: port 0 closing device "mlx5_0" 2024-07-25T17:28:13.321 |13590| MSG [NET] dpdk_log_write:112 mlx5_net: port 0: 0 flows flushed before stopping 2024-07-25T17:28:13.322 |13590| MSG [NET] dpdk_log_write:112 mlx5_common: freeing B-tree 0x10cb88134 with table 0x10cb86bc0 2024-07-25T17:28:13.324 |13590| MSG [NET] dpdk_log_write:112 mlx5_net: port 0 Tx queue 0 freeing WRs 2024-07-25T17:28:13.324 |13590| MSG [NET] dpdk_log_write:112 mlx5_common: freeing B-tree 0x10ca2dfe8 with table 0x10ca2c980 2024-07-25T17:28:13.334 |13590| MSG [NET] dpdk_log_write:112 EAL: request: eal_dev_mp_request 2024-07-25T17:28:13.334 |13590| MSG [NET] dpdk_log_write:112 EAL: PCI device bc5e:00:02.0 on NUMA socket -1 2024-07-25T17:28:13.334 |13590| MSG [NET] dpdk_log_write:112 EAL: remove driver: 15b3:1016 mlx5_pci 2024-07-25T17:28:13.336 |13590| MSG [NET] dpdk_log_write:112 mlx5_common: freeing B-tree 0x1801d9dc0 with table 0x1801d7500 2024-07-25T17:28:13.828 |13590| MSG [NET] dpdk_dev_event_callback:295 HOTPLUG: event callback 1 device bc5e:00:02.0 2024-07-25T17:28:13.828 |13590| MSG [NET] dpdk_log_write:112 netvsc_hotadd_callback(): Device notification type=1 device_name=bc5e:00:02.0 2024-07-25T17:28:13.828 |13590| MSG [NET] dpdk_log_write:112 netvsc_hotadd_callback(): Device notification type=1 device_name=bc5e:00:02.0 2024-07-25T17:28:13.829 |13590| MSG [NET] dpdk_log_write:112 EAL: receive uevent(name:(null), type:1, subsystem:0) 2024-07-25T17:28:13.829 |13590| MSG [NET] dpdk_log_write:112 EAL: Ignoring uevent 'unbind@ /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:07/VMBUS:01/80033a99-bc5e-43c7-aeea-e5773d4414d2' 2024-07-25T17:28:13.829 |13590| MSG [NET] dpdk_log_write:112 EAL: Ignoring uevent 'remove@ /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:07/VMBUS:01/80033a99-bc5e-43c7-aeea-e5773d4414d2' 2024-07-25T17:28:13.829 |13590| MSG [NET] dpdk_log_write:112 EAL: Ignoring uevent 'remove@/channels/41' 2024-07-25T17:28:13.829 |13597| MSG [NET] dpdk_log_write:112 hn_nvs_handle_vfassoc(): VF serial 3 remove from port 2 2024-07-25T17:28:13.829 |13597| MSG [NET] dpdk_log_write:112 hn_vf_remove(): VF path not active. However, I see the synthetic interface not being unbound from the uio_hv_generic driver. Should it be done as part of hotplug notification by my DPDK app or should DPDK code already take care of it ? Regards, Nandini -- This electronic communication and the information and any files transmitted with it, or attached to it, are confidential and are intended solely for the use of the individual or entity to whom it is addressed and may contain information that is confidential, legally privileged, protected by privacy laws, or otherwise restricted from disclosure to anyone else. If you are not the intended recipient or the person responsible for delivering the e-mail to the intended recipient, you are hereby notified that any use, copying, distributing, dissemination, forwarding, printing, or copying of this e-mail is strictly prohibited. If you received this e-mail in error, please return the e-mail to the sender, delete it from your computer, and destroy any printed copy of it.