qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-ppc] [PATCH qemu v17 00/12] spapr: vfio: Enable Dynamic DMA wi


From: David Gibson
Subject: Re: [Qemu-ppc] [PATCH qemu v17 00/12] spapr: vfio: Enable Dynamic DMA windows (DDW)
Date: Thu, 2 Jun 2016 13:36:48 +1000
User-agent: Mutt/1.6.1 (2016-04-27)

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: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]