[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 2/5] intel_iommu: Fix a potential issue in VFIO dirty page
From: |
Peter Xu |
Subject: |
Re: [PATCH v3 2/5] intel_iommu: Fix a potential issue in VFIO dirty page sync |
Date: |
Thu, 8 Jun 2023 09:42:27 -0400 |
On Thu, Jun 08, 2023 at 05:52:28PM +0800, Zhenzhong Duan wrote:
> Peter Xu found a potential issue:
>
> "The other thing is when I am looking at the new code I found that we
> actually extended the replay() to be used also in dirty tracking of vfio,
> in vfio_sync_dirty_bitmap(). For that maybe it's already broken if
> unmap_all() because afaiu log_sync() can be called in migration thread
> anytime during DMA so I think it means the device is prone to DMA with the
> IOMMU pgtable quickly erased and rebuilt here, which means the DMA could
> fail unexpectedly. Copy Alex, Kirti and Neo."
>
> Fix it by replacing the unmap_all() to only evacuate the iova tree
> (keeping all host mappings untouched, IOW, don't notify UNMAP), and
> do a full resync in page walk which will notify all existing mappings
> as MAP. This way we don't interrupt with any existing mapping if there
> is (e.g. for the dirty sync case), meanwhile we keep sync too to latest
> (for moving a vfio device into an existing iommu group).
>
> Suggested-by: Peter Xu <peterx@redhat.com>
> Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
--
Peter Xu
- [PATCH v3 0/5] Optimize UNMAP call and bug fix, Zhenzhong Duan, 2023/06/08
- [PATCH v3 1/5] util: Add iova_tree_foreach_range_data, Zhenzhong Duan, 2023/06/08
- [PATCH v3 2/5] intel_iommu: Fix a potential issue in VFIO dirty page sync, Zhenzhong Duan, 2023/06/08
- Re: [PATCH v3 2/5] intel_iommu: Fix a potential issue in VFIO dirty page sync,
Peter Xu <=
- [PATCH v3 4/5] intel_iommu: Fix address space unmap, Zhenzhong Duan, 2023/06/08
- [PATCH v3 3/5] intel_iommu: Fix flag check in replay, Zhenzhong Duan, 2023/06/08
- [PATCH v3 5/5] intel_iommu: Optimize out some unnecessary UNMAP calls, Zhenzhong Duan, 2023/06/08