]> xenbits.xensource.com Git - people/aperard/qemu-dm.git/commitdiff
vfio/pci: Free leaked timer in vfio_realize error path
authorZhenzhong Duan <zhenzhong.duan@intel.com>
Thu, 29 Jun 2023 08:40:39 +0000 (16:40 +0800)
committerCédric Le Goater <clg@redhat.com>
Fri, 30 Jun 2023 04:02:51 +0000 (06:02 +0200)
When vfio_realize fails, the mmap_timer used for INTx optimization
isn't freed. As this timer isn't activated yet, the potential impact
is just a piece of leaked memory.

Fixes: ea486926b07d ("vfio-pci: Update slow path INTx algorithm timer related")
Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Joao Martins <joao.m.martins@oracle.com>
Signed-off-by: Cédric Le Goater <clg@redhat.com>
hw/vfio/pci.c

index 48df517f79eedc113990fdb6e6943e6d04e81cbb..ab6645ba60af436e58b15ecc92e354e3b8e996b7 100644 (file)
@@ -3224,6 +3224,9 @@ out_deregister:
     if (vdev->irqchip_change_notifier.notify) {
         kvm_irqchip_remove_change_notifier(&vdev->irqchip_change_notifier);
     }
+    if (vdev->intx.mmap_timer) {
+        timer_free(vdev->intx.mmap_timer);
+    }
 out_teardown:
     vfio_teardown_msi(vdev);
     vfio_bars_exit(vdev);