On 2017年01月20日 21:08, Peter Xu wrote:
This patch is based on Aviv Ben-David (<bd.a...@gmail.com>)'s patch
upstream:

   "IOMMU: enable intel_iommu map and unmap notifiers"
   https://lists.gnu.org/archive/html/qemu-devel/2016-11/msg01453.html

However I removed/fixed some content, and added my own codes.

Instead of translate() every page for iotlb invalidations (which is
slower), we walk the pages when needed and notify in a hook function.

This patch enables vfio devices for VT-d emulation.

Signed-off-by: Peter Xu<pet...@redhat.com>
---
  hw/i386/intel_iommu.c         | 66 +++++++++++++++++++++++++++++++++++++------
  include/hw/i386/intel_iommu.h |  8 ++++++
  2 files changed, 65 insertions(+), 9 deletions(-)

A good side effect of this patch is that it makes vhost device IOTLB works without ATS (though may be slow). We probably need a better title :)

And I think we should block notifiers during PSI/DSI/GLOBAL for device with ATS enabled.

Thanks

Reply via email to