Hi All, This patchset includes some fixes on VFIO dirty sync and vIOMMU. PATCH1 isn't needed now as dependent changes in PATCH2 is removed, but as Peter has given Reviewed-by, leave it to maintainer to decide if pick or not.
Tested net card passthrough, ping/ssh pass Tested DSA vdev passthrough, start dmatest then do live migration, pass. Checked the LM performance before and after patch, no explicit difference. (DSA vdev requires customed kernel and qemu) v3: updated PATCH2 to fix VFIO dirty sync in Peter suggested way. split PATCH4 in v2 to PATCH4 and PATCH5 as they target different issue. dropped PATCH3 in v2. add Suggested-by. Thanks Zhenzhong Duan (5): util: Add iova_tree_foreach_range_data intel_iommu: Fix a potential issue in VFIO dirty page sync intel_iommu: Fix flag check in replay intel_iommu: Fix address space unmap intel_iommu: Optimize out some unnecessary UNMAP calls hw/i386/intel_iommu.c | 37 +++++++++++++++++++------------------ include/qemu/iova-tree.h | 17 +++++++++++++++-- util/iova-tree.c | 31 +++++++++++++++++++++++++++++++ 3 files changed, 65 insertions(+), 20 deletions(-) -- 2.34.1