qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Xu <peterx@redhat.com>
To: qemu-devel@nongnu.org
Cc: tianyu.lan@intel.com, kevin.tian@intel.com, mst@redhat.com,
	jan.kiszka@siemens.com, jasowang@redhat.com, peterx@redhat.com,
	alex.williamson@redhat.com, bd.aviv@gmail.com
Subject: [Qemu-devel] [PATCH RFC v2 15/17] intel_iommu: do replay when context invalidate
Date: Tue,  3 Jan 2017 15:29:52 +0800	[thread overview]
Message-ID: <1483428594-28880-16-git-send-email-peterx@redhat.com> (raw)
In-Reply-To: <1483428594-28880-1-git-send-email-peterx@redhat.com>

Before this one we only invalidate context cache when we receive context
entry invalidations. However it's possible that the invalidation also
contains a domain switch (only if cache-mode is enabled for vIOMMU). In
that case we need to notify all the registered components about the new
mapping.

Signed-off-by: Peter Xu <peterx@redhat.com>
---
 hw/i386/intel_iommu.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
index 6f26bcb..ed60cfa 100644
--- a/hw/i386/intel_iommu.c
+++ b/hw/i386/intel_iommu.c
@@ -1152,6 +1152,7 @@ static void vtd_context_device_invalidate(IntelIOMMUState *s,
                 trace_vtd_inv_desc_cc_device(bus_n, (devfn_it >> 3) & 0x1f,
                                              devfn_it & 3);
                 vtd_as->context_cache_entry.context_cache_gen = 0;
+                memory_region_iommu_replay_all(&vtd_as->iommu);
             }
         }
     }
-- 
2.7.4

  parent reply	other threads:[~2017-01-03  7:31 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-03  7:29 [Qemu-devel] [PATCH RFC v2 00/17] VT-d: vfio enablement and misc enhances Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 01/17] IOMMU: add option to enable VTD_CAP_CM to vIOMMU capility exposoed to guest Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 02/17] memory: handle alias for iommu notifier Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 03/17] memory: handle alias in memory_region_is_iommu() Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 04/17] intel_iommu: allocate new key when creating new address space Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 05/17] intel_iommu: simplify irq region translation Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 06/17] intel_iommu: renaming gpa to iova where proper Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 07/17] intel_iommu: fix trace for inv desc handling Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 08/17] intel_iommu: fix trace for addr translation Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 09/17] intel_iommu: vtd_slpt_level_shift check level Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 10/17] memory: add section range info for IOMMU notifier Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 11/17] memory: provide iommu_replay_all() Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 12/17] memory: introduce memory_region_notify_one() Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 13/17] memory: add MemoryRegionIOMMUOps.replay() callback Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 14/17] intel_iommu: provide its own replay() callback Peter Xu
2017-01-03  7:29 ` Peter Xu [this message]
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 16/17] intel_iommu: allow dynamic switch of IOMMU region Peter Xu
2017-01-03  7:29 ` [Qemu-devel] [PATCH RFC v2 17/17] intel_iommu: enable vfio devices Peter Xu
2017-01-03  7:52 ` [Qemu-devel] [PATCH RFC v2 00/17] VT-d: vfio enablement and misc enhances no-reply
2017-01-12 14:27 ` Michael S. Tsirkin
2017-01-13  2:19   ` Peter Xu
2017-01-13  2:57     ` Peter Xu

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=1483428594-28880-16-git-send-email-peterx@redhat.com \
    --to=peterx@redhat.com \
    --cc=alex.williamson@redhat.com \
    --cc=bd.aviv@gmail.com \
    --cc=jan.kiszka@siemens.com \
    --cc=jasowang@redhat.com \
    --cc=kevin.tian@intel.com \
    --cc=mst@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=tianyu.lan@intel.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).