qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Xu <peterx@redhat.com>
To: qemu-devel@nongnu.org, "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>, "Michael S . Tsirkin" <mst@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 0/8] VT-d: some enhancements on iotlb and tools
Date: Tue, 27 Jun 2017 17:22:44 +0800	[thread overview]
Message-ID: <20170627092244.GA14652@pxdev.xzpeter.org> (raw)
In-Reply-To: <1498554219-4942-1-git-send-email-peterx@redhat.com>

On Tue, Jun 27, 2017 at 05:03:31PM +0800, Peter Xu wrote:
> Patch 1: fixes a very rare PT path issue on iova value. It didn't
> break anything since it's merely not touched (only if when IOMMU
> enabled, then set one device to PT), but still better fix it.
> 
> Patch 2-5: added "info iommu" hmp command, and implemented for VT-d.
> Meanwhile, added some statistics for iotlb.

For patch 2,3,5 I should CC Dave. Sorry to have forgotten.

> 
> Patch 6: introduce "x-iotlb-size" to tune iotlb size, or to turn it
> off (e.g., when we want to measure how iotlb affects one payload).
> 
> Patch 7: some refine on iotlb entry.
> 
> Patch 8: implemented MRU list algorithm for iotlb.
> 
> For the last patch, it's logically making more sense than the old
> algo, however the performance is merely the same as before (as far as
> I tested with simple netperf payloads, in either streaming, rr,
> reverse, etc.) since in most normal cases we cannot really let iotlb
> overflow especially when size is 1024 by default, e.g., guest kernel
> driver will release buffer when after used, and unstrict
> intel_iommu=on parameter will also send periodic global iotlb flush
> which will reset the whole cache. If anyone has suggestion on specific
> workload, please shoot. Anyway, I'm posting this out for review to see
> any possible comments/suggestions.
> 
> Thanks,
> 
> Peter Xu (8):
>   intel_iommu: fix VTD_PAGE_MASK
>   hmp: add info iommu
>   intel_iommu: support "info iommu"
>   intel_iommu: add iotlb/context cache statistics
>   intel_iommu: hmp: allow "-c" for "info iommu"
>   intel_iommu: let iotlb size tunable
>   intel_iommu: use access_flags for iotlb
>   intel_iommu: implement mru list for iotlb
> 
>  hmp-commands-info.hx           |  14 ++++
>  hmp.c                          |   6 ++
>  hmp.h                          |   1 +
>  hw/i386/intel_iommu.c          | 169 +++++++++++++++++++++++++++++++----------
>  hw/i386/intel_iommu_internal.h |  11 +--
>  hw/i386/trace-events           |   1 -
>  hw/i386/x86-iommu.c            |  17 +++++
>  include/hw/i386/intel_iommu.h  |  20 ++++-
>  include/hw/i386/x86-iommu.h    |   5 ++
>  include/hw/iommu.h             |   9 +++
>  stubs/Makefile.objs            |   1 +
>  stubs/iommu.c                  |   9 +++
>  12 files changed, 209 insertions(+), 54 deletions(-)
>  create mode 100644 include/hw/iommu.h
>  create mode 100644 stubs/iommu.c
> 
> -- 
> 2.7.4
> 
> 

-- 
Peter Xu

  parent reply	other threads:[~2017-06-27  9:22 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-27  9:03 [Qemu-devel] [PATCH 0/8] VT-d: some enhancements on iotlb and tools Peter Xu
2017-06-27  9:03 ` [Qemu-devel] [PATCH 1/8] intel_iommu: fix VTD_PAGE_MASK Peter Xu
2017-06-27  9:03 ` [Qemu-devel] [PATCH 2/8] hmp: add info iommu Peter Xu
2017-06-27  9:03 ` [Qemu-devel] [PATCH 3/8] intel_iommu: support "info iommu" Peter Xu
2017-06-27  9:03 ` [Qemu-devel] [PATCH 4/8] intel_iommu: add iotlb/context cache statistics Peter Xu
2017-06-27  9:03 ` [Qemu-devel] [PATCH 5/8] intel_iommu: hmp: allow "-c" for "info iommu" Peter Xu
2017-06-27  9:03 ` [Qemu-devel] [PATCH 6/8] intel_iommu: let iotlb size tunable Peter Xu
2017-06-27  9:03 ` [Qemu-devel] [PATCH 7/8] intel_iommu: use access_flags for iotlb Peter Xu
2017-06-27  9:03 ` [Qemu-devel] [PATCH 8/8] intel_iommu: implement mru list " Peter Xu
2017-06-27  9:22 ` Peter Xu [this message]
2017-06-27 14:42 ` [Qemu-devel] [PATCH 0/8] VT-d: some enhancements on iotlb and tools Michael S. Tsirkin
2017-06-28  7:03   ` Peter Xu
2017-06-27 16:30 ` 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=20170627092244.GA14652@pxdev.xzpeter.org \
    --to=peterx@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=jasowang@redhat.com \
    --cc=mst@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /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).