]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
vfio/pci: Clean up DMABUFs before disabling function
authorMatt Evans <mattev@meta.com>
Wed, 15 Apr 2026 18:17:52 +0000 (11:17 -0700)
committerAlex Williamson <alex@shazbot.org>
Tue, 21 Apr 2026 18:01:20 +0000 (12:01 -0600)
commitd97708701434ce72968e771976aaf9d3438fcafd
tree4028ce3a8365144de74b16ab8ce570d0e6687292
parent4ee64205ffaa587e8114d84a67ac721399ccb369
vfio/pci: Clean up DMABUFs before disabling function

On device shutdown, make vfio_pci_core_close_device() call
vfio_pci_dma_buf_cleanup() before the function is disabled via
vfio_pci_core_disable().  This ensures that all access via DMABUFs is
revoked before the function's BARs become inaccessible.

This fixes an issue where, if the function is disabled first, a tiny
window exists in which the function's MSE is cleared and yet BARs
could still be accessed via the DMABUF.  The resources would also be
freed and up for grabs by a different driver.

Fixes: 5d74781ebc86c ("vfio/pci: Add dma-buf export support for MMIO regions")
Signed-off-by: Matt Evans <mattev@meta.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Link: https://lore.kernel.org/r/20260415181752.1027604-1-mattev@meta.com
Signed-off-by: Alex Williamson <alex@shazbot.org>
drivers/vfio/pci/vfio_pci_core.c