On Thu, Mar 12, 2026 at 11:46:00AM -0700, Matt Evans wrote:
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
drivers/vfio/pci/vfio_pci_core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
This seems like it should not be RFC and it should go to stable?
The normal mmaps are cleaned because they hold the file open while they exist, dmabuf upends that and it does need zapping early.
Reviewed-by: Jason Gunthorpe jgg@nvidia.com
Jason