On 14/10/2026 00:13, Alex Williamson wrote:
On Tue,  6 Oct 2026 20:36:35 +0100
Matt Evans <[email protected]> wrote:
diff --git a/drivers/vfio/pci/vfio_pci_core.c b/drivers/vfio/pci/vfio_pci_core.c
index cb0e4865d110..986852b1d44f 100644
--- a/drivers/vfio/pci/vfio_pci_core.c
+++ b/drivers/vfio/pci/vfio_pci_core.c
@@ -1337,13 +1338,18 @@ static int vfio_pci_ioctl_reset(struct 
vfio_pci_core_device *vdev,
         * have NoSoftRst-, the reset function can cause the PCI config space
         * reset without restoring the original state (saved locally in
         * 'vdev->pm_save').
+        *
+        * The zap is done after making the device accessible in D0,
+        * because a DMABUF importer could access the device as part
+        * of its revocation cleanup.

Nit, s/zap/revoke/

Doh, done. Also cleaning up a "zap/revoke" in the vfio_pci_dev_set_hot_reset chunk.

Thanks


Matt



Thanks,
Alex

         */
        vfio_pci_set_power_state(vdev, PCI_D0);
- vfio_pci_dma_buf_move(vdev, true);
+       vfio_pci_revoke_bars(vdev);
+
        ret = pci_try_reset_function(vdev->pdev);
        if (__vfio_pci_memory_enabled(vdev))
-               vfio_pci_dma_buf_move(vdev, false);
+               vfio_pci_unrevoke_bars(vdev);
        up_write(&vdev->memory_lock);
return ret;


Reply via email to