[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap
From: |
Alex Williamson |
Subject: |
Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications |
Date: |
Thu, 10 Nov 2016 08:30:21 -0700 |
On Thu, 10 Nov 2016 17:14:24 +0200
"Michael S. Tsirkin" <address@hidden> wrote:
> On Tue, Nov 08, 2016 at 01:04:21PM +0200, Aviv B.D wrote:
> > From: "Aviv Ben-David" <address@hidden>
> >
> > * Advertize Cache Mode capability in iommu cap register.
> > This capability is controlled by "cache-mode" property of intel-iommu
> > device.
> > To enable this option call QEMU with "-device
> > intel-iommu,cache-mode=true".
> >
> > * On page cache invalidation in intel vIOMMU, check if the domain belong to
> > registered notifier, and notify accordingly.
>
> This looks sane I think. Alex, care to comment?
> Merging will have to wait until after the release.
> Pls remember to re-test and re-ping then.
I don't think it's suitable for upstream until there's a reasonable
replay mechanism and we straighten out whether it's expected to get
multiple notifies and the notif-ee is responsible for filtering
them or if the notif-er should do filtering. Without those, this is
effectively just an RFC. Thanks,
Alex
> > Currently this patch still doesn't enabling VFIO devices support with
> > vIOMMU
> > present. Current problems:
> > * vfio_iommu_map_notify is not aware about memory range belong to specific
> > VFIOGuestIOMMU.
> > * memory_region_iommu_replay hangs QEMU on start up while it itterate over
> > 64bit address space. Commenting out the call to this function enables
> > workable VFIO device while vIOMMU present.
> > * vfio_iommu_map_notify should check if address space range is suitable for
> > current notifier.
> >
> > 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.
> >
> > Changes from v3 to v4:
> > * Add property to intel_iommu device to control the CM capability,
> > default to False.
> > * Use s->iommu_ops.notify_flag_changed to register notifiers.
> >
> > Changes from v4 to v4 RESEND:
> > * Fix codding style pointed by checkpatch.pl script.
> >
> > Changes from v4 to v5:
> > * Reduce the number of changes in patch 2 and make flags real bitfield.
> > * Revert deleted debug prints.
> > * Fix memory leak in patch 3.
> >
> > Changes from v5 to v6:
> > * fix prototype of iommu_translate function for more IOMMU types.
> > * VFIO will be notified only on the difference, without unmap
> > before change to maps.
> >
> > Aviv Ben-David (3):
> > IOMMU: add option to enable VTD_CAP_CM to vIOMMU capility exposoed to
> > guest
> > IOMMU: change iommu_op->translate's is_write to flags, add support to
> > NO_FAIL flag mode
> > IOMMU: enable intel_iommu map and unmap notifiers
> >
> > exec.c | 3 +-
> > hw/alpha/typhoon.c | 2 +-
> > hw/i386/amd_iommu.c | 4 +-
> > hw/i386/intel_iommu.c | 160
> > +++++++++++++++++++++++++++++++++--------
> > hw/i386/intel_iommu_internal.h | 3 +
> > hw/pci-host/apb.c | 2 +-
> > hw/ppc/spapr_iommu.c | 2 +-
> > hw/s390x/s390-pci-bus.c | 2 +-
> > include/exec/memory.h | 6 +-
> > include/hw/i386/intel_iommu.h | 11 +++
> > memory.c | 3 +-
> > 11 files changed, 160 insertions(+), 38 deletions(-)
> >
> > --
> > 1.9.1
>
- [Qemu-devel] [PATCH v6 1/3] IOMMU: add option to enable VTD_CAP_CM to vIOMMU capility exposoed to guest, (continued)
[Qemu-devel] [PATCH v6 3/3] IOMMU: enable intel_iommu map and unmap notifiers, Aviv B.D, 2016/11/08
[Qemu-devel] [PATCH v6 2/3] IOMMU: change iommu_op->translate's is_write to flags, add support to NO_FAIL flag mode, Aviv B.D, 2016/11/08
Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Michael S. Tsirkin, 2016/11/10
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications,
Alex Williamson <=
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Michael S. Tsirkin, 2016/11/10
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Alex Williamson, 2016/11/10
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Michael S. Tsirkin, 2016/11/10
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Alex Williamson, 2016/11/10
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Michael S. Tsirkin, 2016/11/16
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Alex Williamson, 2016/11/16
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Aviv B.D., 2016/11/16
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Michael S. Tsirkin, 2016/11/16
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Aviv B.D., 2016/11/21
- Re: [Qemu-devel] [PATCH v6 0/3] IOMMU: intel_iommu support map and unmap notifications, Alex Williamson, 2016/11/16