From: "Aviv Ben-David" <bd.a...@gmail.com> * Advertize Cache Mode capability in iommu cap register. * Register every VFIO device with IOMMU state. * On page cache invalidation in vIOMMU, check if the domain belong to VFIO device and mirror the guest requests to host.
Changes from v1 to v2: * remove assumption that the cache do not clears * fix lockup on high load. Changes from v2 to v3: * remove debug leftovers * split to sepearate commits * change is_write to flags in vtd_do_iommu_translate, add IOMMU_NO_FAIL to suppress error propagating to guest. Aviv Ben-David (3): IOMMU: add VTD_CAP_VM to vIOMMU capability exposed to guest IOMMU: change iommu_op->translate's is_write to flags, add support to NO_FAIL flag mode IOMMU: Integrate between VFIO and vIOMMU to support device assignment exec.c | 2 +- hw/i386/intel_iommu.c | 137 ++++++++++++++++++++++++++++++++--------- hw/i386/intel_iommu_internal.h | 3 + hw/vfio/common.c | 11 +++- include/exec/memory.h | 4 +- include/hw/i386/intel_iommu.h | 4 ++ include/hw/vfio/vfio-common.h | 1 + memory.c | 2 +- 8 files changed, 129 insertions(+), 35 deletions(-) -- 1.9.1