qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Eric Auger <eric.auger@redhat.com>
To: eric.auger.pro@gmail.com, eric.auger@redhat.com,
	qemu-devel@nongnu.org, qemu-arm@nongnu.org,
	peter.maydell@linaro.org, jean-philippe@linaro.org,
	bbhushan2@marvell.com, peterx@redhat.com, armbru@redhat.com
Cc: mst@redhat.com
Subject: [PATCH 0/5] VIRTIO-IOMMU probe request support and MSI bypass on ARM
Date: Thu,  7 May 2020 16:31:56 +0200	[thread overview]
Message-ID: <20200507143201.31080-1-eric.auger@redhat.com> (raw)

By default the virtio-iommu translates MSI transactions. This
behavior is inherited from ARM SMMU. However the virt machine
code knows where the MSI doorbells are so we can easily
declare those regions as VIRTIO_IOMMU_RESV_MEM_T_MSI. With that
setting the guest iommu subsystem will not need to map MSIs.
This setup will simplify VFIO integration.

In this series, the ITS doorbell is declared as an MSI region to
be bypassed by the VIRTIO-IOMMU.

This paves the way to the x86 integration where the MSI region
[0xFEE00000,0xFEEFFFFF] will be exposed by q35 machine. However
this is not part of this series.

Best Regards

Eric

This series can be found at:
https://github.com/eauger/qemu/tree/v5.0.0-virtio-iommu-msi-bypass-v1

History:
- Most of those patches were respinned from
  [PATCH for-5.0 v11 00/20] VIRTIO-IOMMU device
  except the last one which is new


Eric Auger (5):
  qdev: Introduce DEFINE_PROP_RESERVED_REGION
  virtio-iommu: Implement RESV_MEM probe request
  virtio-iommu: Handle reserved regions in the translation process
  virtio-iommu-pci: Add array of Interval properties
  hw/arm/virt: Let the virtio-iommu bypass MSIs

 include/exec/memory.h            |   6 ++
 include/hw/qdev-properties.h     |   3 +
 include/hw/virtio/virtio-iommu.h |   2 +
 include/qemu/typedefs.h          |   1 +
 hw/arm/virt.c                    |   5 ++
 hw/core/qdev-properties.c        |  89 +++++++++++++++++++++++++
 hw/virtio/virtio-iommu-pci.c     |   3 +
 hw/virtio/virtio-iommu.c         | 109 ++++++++++++++++++++++++++++++-
 hw/virtio/trace-events           |   1 +
 9 files changed, 217 insertions(+), 2 deletions(-)

-- 
2.20.1



             reply	other threads:[~2020-05-07 14:33 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-07 14:31 Eric Auger [this message]
2020-05-07 14:31 ` [PATCH 1/5] qdev: Introduce DEFINE_PROP_RESERVED_REGION Eric Auger
2020-05-07 14:31 ` [PATCH 2/5] virtio-iommu: Implement RESV_MEM probe request Eric Auger
2020-05-07 19:40   ` Peter Xu
2020-05-08  6:23     ` Auger Eric
2020-05-08  9:26   ` Jean-Philippe Brucker
2020-05-08 14:02     ` Auger Eric
2020-05-07 14:31 ` [PATCH 3/5] virtio-iommu: Handle reserved regions in the translation process Eric Auger
2020-05-07 19:47   ` Peter Xu
2020-05-08  6:34     ` Auger Eric
2020-05-07 14:32 ` [PATCH 4/5] virtio-iommu-pci: Add array of Interval properties Eric Auger
2020-05-07 14:32 ` [PATCH 5/5] hw/arm/virt: Let the virtio-iommu bypass MSIs Eric Auger
2020-05-08  8:21   ` Jean-Philippe Brucker
2020-05-08  8:40     ` Auger Eric

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=20200507143201.31080-1-eric.auger@redhat.com \
    --to=eric.auger@redhat.com \
    --cc=armbru@redhat.com \
    --cc=bbhushan2@marvell.com \
    --cc=eric.auger.pro@gmail.com \
    --cc=jean-philippe@linaro.org \
    --cc=mst@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=peterx@redhat.com \
    --cc=qemu-arm@nongnu.org \
    --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).