qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Xu <peterx@redhat.com>
To: Alex Williamson <alex.williamson@redhat.com>
Cc: David Gibson <dgibson@redhat.com>,
	Jason Wang <jasowang@redhat.com>,
	mst@redhat.com, qemu-devel@nongnu.org, pbonzini@redhat.com,
	cornelia.huck@de.ibm.com, wexu@redhat.com, vkaplans@redhat.com
Subject: Re: [Qemu-devel] [PATCH for 2.8 10/11] Revert "intel_iommu: Throw hw_error on notify_started"
Date: Mon, 5 Sep 2016 14:28:32 +0800	[thread overview]
Message-ID: <20160905062832.GA7761@pxdev.xzpeter.org> (raw)
In-Reply-To: <20160902091301.30662d7a@t450s.home>

On Fri, Sep 02, 2016 at 09:13:01AM -0600, Alex Williamson wrote:
> Maybe memory_region_register_iommu_notifier() could take an
> IOMMUAccessFlags argument (filter) that is passed to the notify_started
> callback.  If a notifier client only cares about IOMMU_NONE
> (invalidations), intel-iommu could allow it, regardless of the CM
> setting (though I'm dubious whether this is complete in the generic
> case or really only for device iotlbs).  If a client requires IOMMU_RW
> then intel-iommu would currently bomb-out like it does now, or once
> that gets fixed it would bomb if CM=0.  Ideally intel-iommu would
> be fully functional, but somehow it was allowed into the tree
> with this massive gap in support for QEMU iommu interfaces.  Thanks,

Yes, this idea should solve the issue, and looks simple.

This should be based on the assumption that we will have only one
notify register for each IOMMU memory region. However I think that
does suit our use cases (no mix use for the two types).

Meanwhile, I think we can cache this "notifier type" (or
IOMMUAccessFlags) inside that memory region, and we can further verify
the type any time we want (e.g., we can skip the notification if the
type is not matched).

I'll try to post a patch based on your suggestion, and see whether we
like it.

Thanks!

-- peterx

  reply	other threads:[~2016-09-05  6:28 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-30  3:06 [Qemu-devel] [PATCH for 2.8 00/11] virtio/vhost DMAR support Jason Wang
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 01/11] linux-headers: update to 4.8-rc4 Jason Wang
2016-09-05  1:24   ` Wei Xu
2016-09-05  1:26     ` Michael S. Tsirkin
2016-09-06  6:28       ` Jason Wang
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 02/11] virtio: convert to use DMA api Jason Wang
2016-08-30  7:31   ` Cornelia Huck
2016-08-30 10:02     ` Michael S. Tsirkin
2016-08-30 10:21       ` Michael S. Tsirkin
2016-08-30 11:11         ` [Qemu-devel] qom and debug (was: [PATCH for 2.8 02/11] virtio: convert to use DMA api) Cornelia Huck
2016-08-30 11:15           ` Michael S. Tsirkin
2016-08-30 11:37             ` [Qemu-devel] qom and debug Cornelia Huck
2016-08-30 11:57               ` Michael S. Tsirkin
2016-08-31  2:47     ` [Qemu-devel] [PATCH for 2.8 02/11] virtio: convert to use DMA api Jason Wang
2016-09-05  2:26   ` Wei Xu
2016-09-06  6:30     ` Jason Wang
2016-09-05  2:33   ` Michael S. Tsirkin
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 03/11] intel_iommu: name vtd address space with devfn Jason Wang
2016-09-05  6:56   ` Wei Xu
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 04/11] intel_iommu: allocate new key when creating new address space Jason Wang
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 05/11] exec: introduce address_space_get_iotlb_entry() Jason Wang
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 06/11] intel_iommu: support device iotlb descriptor Jason Wang
2016-08-30 13:16   ` Peter Xu
2016-08-31  2:54     ` Jason Wang
2016-09-01  1:26       ` Peter Xu
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 07/11] virtio-pci: address space translation service (ATS) support Jason Wang
2016-08-30 13:21   ` Peter Xu
2016-08-31  2:55     ` Jason Wang
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 08/11] acpi: add ATSR for q35 Jason Wang
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 09/11] memory: handle alias for iommu notifier Jason Wang
2016-08-30 13:28   ` Peter Xu
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 10/11] Revert "intel_iommu: Throw hw_error on notify_started" Jason Wang
2016-08-30  3:37   ` Alex Williamson
2016-08-31  2:45     ` Jason Wang
2016-09-01  2:29       ` Peter Xu
2016-09-01  2:43         ` Alex Williamson
2016-09-01  3:58           ` Peter Xu
2016-09-02  4:15             ` David Gibson
2016-09-02  5:37               ` Peter Xu
2016-09-02  6:10                 ` David Gibson
2016-09-02  6:15                   ` Peter Xu
2016-09-02  6:18                     ` Peter Xu
2016-09-02  7:00                       ` David Gibson
2016-09-02  9:31                         ` Peter Xu
2016-09-02 15:13                           ` Alex Williamson
2016-09-05  6:28                             ` Peter Xu [this message]
2016-08-30  3:06 ` [Qemu-devel] [PATCH for 2.8 11/11] vhost_net: device IOTLB support Jason Wang
2016-09-01  3:34   ` Peter Xu
2016-09-01  7:36     ` Jason Wang
2016-09-02  5:47       ` Peter Xu
2016-08-30  3:25 ` [Qemu-devel] [PATCH for 2.8 00/11] virtio/vhost DMAR support no-reply
2016-08-30  3:29 ` no-reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160905062832.GA7761@pxdev.xzpeter.org \
    --to=peterx@redhat.com \
    --cc=alex.williamson@redhat.com \
    --cc=cornelia.huck@de.ibm.com \
    --cc=dgibson@redhat.com \
    --cc=jasowang@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=vkaplans@redhat.com \
    --cc=wexu@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).