From: "Michael S. Tsirkin" <mst@redhat.com>
To: Eric Auger <eric.auger@redhat.com>
Cc: peter.maydell@linaro.org, jean-philippe@linaro.org,
qemu-devel@nongnu.org, peterx@redhat.com, armbru@redhat.com,
qemu-arm@nongnu.org, pbonzini@redhat.com, bbhushan2@marvell.com,
eric.auger.pro@gmail.com
Subject: Re: [PATCH v7 0/5] VIRTIO-IOMMU probe request support and MSI bypass on ARM
Date: Thu, 2 Jul 2020 07:28:04 -0400 [thread overview]
Message-ID: <20200702072655-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20200629070404.10969-1-eric.auger@redhat.com>
On Mon, Jun 29, 2020 at 09:03:59AM +0200, Eric Auger wrote:
> 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 the VFIO integration.
>
> In this series, the ITS or GICV2M doorbells are declared as
> HW MSI regions to be bypassed by the VIRTIO-IOMMU.
>
> This also paves the way to the x86 integration where the MSI
> region, [0xFEE00000,0xFEEFFFFF], will be exposed by the q35
> machine. However this will be handled in a separate series
> when not-DT support gets resolved.
virtio things:
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
ARM tree makes sense for this, right?
> Best Regards
>
> Eric
>
> This series can be found at:
> https://github.com/eauger/qemu/tree/v5.0.0-virtio-iommu-msi-bypass-v7
>
> History:
>
> v6 -> v7:
> - fix the hint message
> - put the assert again on probe request
>
> v5 -> v6:
> - do not hardcode start/end addresses of doorbells
> - check reserved region type on realize()
>
> v4 -> v5:
> - Take into account some additional comments from Markus:
> - reserved region type becomes an unsigned + some comment/desc
> rewording
> - assert if the type is not RESERVED or MSI
>
> v3 -> v4:
> - collected Jean and markus's R-bs
> - tool into account all Markus' comments in [1/5] (except removal of
> goto)
> - use ':' as delimitor instead of commas
> - add example in 4/5 commit message as suggested by Markus
>
> v2 -> v3:
> - Introduce VIRT_MSI_CTRL_NONE in VirtMSIControllerType
> - do not fill the remainder of the probe buffer
>
> v1 -> v2:
> - check which MSI controller is in use and advertise the
> corresponding MSI doorbell
> - managed for both ITS and GICv2M
> - various fixes spotted by Peter and Jean-Philippe, see
> individual logs
>
> v1: 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/arm/virt.h | 7 ++
> include/hw/qdev-properties.h | 3 +
> include/hw/virtio/virtio-iommu.h | 2 +
> include/qemu/typedefs.h | 1 +
> hw/arm/virt.c | 30 ++++++++
> hw/core/qdev-properties.c | 89 ++++++++++++++++++++++++
> hw/virtio/virtio-iommu-pci.c | 11 +++
> hw/virtio/virtio-iommu.c | 114 +++++++++++++++++++++++++++++--
> hw/virtio/trace-events | 1 +
> 10 files changed, 260 insertions(+), 4 deletions(-)
>
> --
> 2.20.1
next prev parent reply other threads:[~2020-07-02 11:30 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-29 7:03 [PATCH v7 0/5] VIRTIO-IOMMU probe request support and MSI bypass on ARM Eric Auger
2020-06-29 7:04 ` [PATCH v7 1/5] qdev: Introduce DEFINE_PROP_RESERVED_REGION Eric Auger
2020-06-29 7:04 ` [PATCH v7 2/5] virtio-iommu: Implement RESV_MEM probe request Eric Auger
2021-07-03 16:31 ` Michael S. Tsirkin
2021-07-03 16:32 ` Michael S. Tsirkin
2020-06-29 7:04 ` [PATCH v7 3/5] virtio-iommu: Handle reserved regions in the translation process Eric Auger
2020-06-29 7:04 ` [PATCH v7 4/5] virtio-iommu-pci: Add array of Interval properties Eric Auger
2020-06-29 7:04 ` [PATCH v7 5/5] hw/arm/virt: Let the virtio-iommu bypass MSIs Eric Auger
2020-07-02 11:26 ` Michael S. Tsirkin
2020-07-02 11:19 ` [PATCH v7 0/5] VIRTIO-IOMMU probe request support and MSI bypass on ARM Auger Eric
2020-07-02 11:28 ` Michael S. Tsirkin [this message]
2020-07-02 12:01 ` Auger Eric
2020-07-02 13:12 ` Michael S. Tsirkin
2020-07-03 12:53 ` Peter Maydell
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=20200702072655-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=armbru@redhat.com \
--cc=bbhushan2@marvell.com \
--cc=eric.auger.pro@gmail.com \
--cc=eric.auger@redhat.com \
--cc=jean-philippe@linaro.org \
--cc=pbonzini@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).