qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: David Gibson <david@gibson.dropbear.id.au>
To: Alexey Kardashevskiy <aik@ozlabs.ru>
Cc: qemu-devel@nongnu.org, qemu-ppc@nongnu.org,
	Alexander Graf <agraf@suse.de>,
	Alex Williamson <alex.williamson@redhat.com>
Subject: Re: [Qemu-devel] [PATCH qemu v17 00/12] spapr: vfio: Enable Dynamic DMA windows (DDW)
Date: Thu, 2 Jun 2016 13:36:48 +1000	[thread overview]
Message-ID: <20160602033648.GL15455@voom.fritz.box> (raw)
In-Reply-To: <201606010902.u51901oX007518@mx0a-001b2d01.pphosted.com>

[-- Attachment #1: Type: text/plain, Size: 2943 bytes --]

On Wed, Jun 01, 2016 at 06:57:31PM +1000, Alexey Kardashevskiy wrote:
> Each Partitionable Endpoint (IOMMU group) has an address range on a PCI bus
> where devices are allowed to do DMA. These ranges are called DMA windows.
> By default, there is a single DMA window, 1 or 2GB big, mapped at zero
> on a PCI bus.
> 
> PAPR defines a DDW RTAS API which allows pseries guests
> querying the hypervisor about DDW support and capabilities (page size mask
> for now). A pseries guest may request an additional (to the default)
> DMA windows using this RTAS API.
> The existing pseries Linux guests request an additional window as big as
> the guest RAM and map the entire guest window which effectively creates
> direct mapping of the guest memory to a PCI bus.
> 
> This patchset reworks PPC64 IOMMU code and adds necessary structures
> to support big windows on pseries.
> 
> This patchset is based on David's ppc-for-2.7-20160531 tag.
> 
> 
> Please comment. Thanks!

I've merged 1-5.  6 needs some sort of ack from Paolo.  Continuing to
review the remainder.

> 
> 
> Alexey Kardashevskiy (12):
>   vmstate: Define VARRAY with VMS_ALLOC
>   spapr_iommu: Introduce "enabled" state for TCE table
>   spapr_iommu: Migrate full state
>   spapr_iommu: Add root memory region
>   spapr_pci: Reset DMA config on PHB reset
>   memory: Add reporting of supported page sizes
>   vfio: spapr: Add DMA memory preregistering (SPAPR IOMMU v2)
>   spapr_pci: Add and export DMA resetting helper
>   vfio: Add host side DMA window capabilities
>   vfio/spapr: Create DMA window dynamically (SPAPR IOMMU v2)
>   spapr_pci/spapr_pci_vfio: Support Dynamic DMA Windows (DDW)
>   spapr_iommu, vfio, memory: Notify IOMMU about starting/stopping
>     listening
> 
>  hw/ppc/Makefile.objs          |   1 +
>  hw/ppc/spapr.c                |   5 +
>  hw/ppc/spapr_iommu.c          | 160 +++++++++++++++++++----
>  hw/ppc/spapr_pci.c            |  96 ++++++++++----
>  hw/ppc/spapr_rtas_ddw.c       | 293 ++++++++++++++++++++++++++++++++++++++++++
>  hw/ppc/spapr_vio.c            |   8 +-
>  hw/vfio/Makefile.objs         |   1 +
>  hw/vfio/common.c              | 174 +++++++++++++++++++------
>  hw/vfio/spapr.c               | 207 +++++++++++++++++++++++++++++
>  include/exec/memory.h         |  26 +++-
>  include/hw/pci-host/spapr.h   |  10 +-
>  include/hw/ppc/spapr.h        |  30 ++++-
>  include/hw/vfio/vfio-common.h |  19 ++-
>  include/migration/vmstate.h   |  10 ++
>  memory.c                      |  26 +++-
>  trace-events                  |  10 ++
>  16 files changed, 961 insertions(+), 115 deletions(-)
>  create mode 100644 hw/ppc/spapr_rtas_ddw.c
>  create mode 100644 hw/vfio/spapr.c
> 

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

       reply	other threads:[~2016-06-02  3:37 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <201606010902.u51901oX007518@mx0a-001b2d01.pphosted.com>
2016-06-02  3:36 ` David Gibson [this message]
2016-06-01  8:57 [Qemu-devel] [PATCH qemu v17 00/12] spapr: vfio: Enable Dynamic DMA windows (DDW) Alexey Kardashevskiy

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=20160602033648.GL15455@voom.fritz.box \
    --to=david@gibson.dropbear.id.au \
    --cc=agraf@suse.de \
    --cc=aik@ozlabs.ru \
    --cc=alex.williamson@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@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).