qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 0/2] memory/intel_iommu: Generate error for inco


From: Peter Xu
Subject: Re: [Qemu-devel] [PATCH 0/2] memory/intel_iommu: Generate error for incompatible usage
Date: Thu, 16 Jun 2016 11:21:29 +0800
User-agent: Mutt/1.5.24 (2015-08-30)

On Wed, Jun 15, 2016 at 09:56:03AM -0600, Alex Williamson wrote:
> VT-d emulation is currently incompatible with device assignment due
> to intel_iommu's lack of support for memory_region_notify_iommu().
> Alexey has proposed a nice addition to the MemoryRegionIOMMUOps
> structure that adds callbacks when the first iommu notifier is
> registered and the last is removed.  For POWER this will allow them
> to switch the view of the iommu depending on whether anyone in
> userspace is watching.  For VT-d I expect that eventually we'll use
> these callbacks to enable and disable code paths so that we avoid
> notifier overhead when there are no registered notifiy-ees.  For now,
> we don't support calling memory_region_notify_iommu(), so this
> signals an incompatible hardware configuration.  If we choose to make
> CM=0 a user selectable option, something like this might continue to
> be useful if we only support notifies via invalidations rather than
> full VT-d data structure shadowing.
> 
> Even though we're currently working on enabling users like vfio-pci
> with VT-d, I believe this is correct for the current state of things.
> We might even want to consider this stable for v2.6.x so that
> downstreams pick it up to avoid incompatible configurations.

Reviewed-by: Peter Xu <address@hidden>
Tested-by: Peter Xu <address@hidden>

(This is much more friendly than a dead loop.)

> 
> Alexey, I hope I'm not stepping on your toes by extracting this
> from your latest patch series.  Please let us know whether you
> approve.  Thanks,
> 
> Alex
> 
> ---
> 
> Alex Williamson (1):
>       intel_iommu: Throw hw_error on notify_started
> 
> Alexey Kardashevskiy (1):
>       memory: Add MemoryRegionIOMMUOps.notify_started/stopped callbacks
> 
> 
>  hw/i386/intel_iommu.c |   12 ++++++++++++
>  hw/vfio/common.c      |    5 +++--
>  include/exec/memory.h |    8 +++++++-
>  memory.c              |   10 +++++++++-
>  4 files changed, 31 insertions(+), 4 deletions(-)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]