Re: [RFC v2 PATCH 02/10] vfio/pci: Clean up DMABUFs before disabling function

From: Jason Gunthorpe

Date: Mon Mar 30 2026 - 09:41:27 EST


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@xxxxxxxx>
> ---
> 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@xxxxxxxxxx>

Jason