[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH Kernel v24 0/8] Add UAPIs to support migration for VFIO devic
From: |
Alex Williamson |
Subject: |
Re: [PATCH Kernel v24 0/8] Add UAPIs to support migration for VFIO devices |
Date: |
Tue, 29 Sep 2020 13:52:30 -0600 |
On Tue, 29 Sep 2020 09:27:02 +0100
Stefan Hajnoczi <stefanha@gmail.com> wrote:
> On Fri, May 29, 2020 at 02:00:46AM +0530, Kirti Wankhede wrote:
> > * IOCTL VFIO_IOMMU_DIRTY_PAGES to get dirty pages bitmap with
> > respect to IOMMU container rather than per device. All pages pinned by
> > vendor driver through vfio_pin_pages external API has to be marked as
> > dirty during migration. When IOMMU capable device is present in the
> > container and all pages are pinned and mapped, then all pages are marked
> > dirty.
>
> From what I can tell only the iommu participates in dirty page tracking.
> This places the responsibility for dirty page tracking on IOMMUs. My
> understanding is that support for dirty page tracking is currently not
> available in IOMMUs.
>
> Can a PCI device implement its own DMA dirty log and let an mdev driver
> implement the dirty page tracking using this mechanism? That way we
> don't need to treat all pinned pages as dirty all the time.
Look at the last patch in this series, there we define a mechanism
whereby the act of a vendor driver pinning pages both marks those pages
dirty and indicates a mode in the vfio type1 container where the scope
of dirty pages is limited to those pages pinned by the driver. The
vfio_dma_rw() interface does the same. We could clearly implement a
more lightweight interface for this as well, one without pinning or
memory access, but there are no proposed users for such an interface
currently. Thanks,
Alex