Patchwork [PULL,00/25] Memory/IOMMU patches, part 3: IOMMU implementation

login
register
mail settings
Submitter Paolo Bonzini
Date June 20, 2013, 2:44 p.m.
Message ID <1371739493-10187-1-git-send-email-pbonzini@redhat.com>
Download mbox
Permalink /patch/252968/
State New
Headers show

Pull-request

git://github.com/bonzini/qemu.git iommu-for-anthony

Comments

Paolo Bonzini - June 20, 2013, 2:44 p.m.
Anthony,

The following changes since commit 4eda32f588086b6cd0ec2be6a7a6c131f8c2b427:

  doc: Drop ref to Bochs from -no-fd-bootchk documentation (2013-06-19 14:10:44 -0500)

are available in the git repository at:

  git://github.com/bonzini/qemu.git iommu-for-anthony

for you to fetch changes up to 2eb74e1a1ef145034aa41255c4a6f469d560c96d:

  memory: render_memory_region: factor out fr constant setters (2013-06-20 16:39:52 +0200)

This part includes Jan's subpage reorganization (needed to unify MMIO
and PIO dispatch), the implementation of IOMMU regions and a bunch
of cleanups.

There is full support for 64-bit-sized IOMMU regions, so I'm reverting the
patches from part 1 that reduced the maximum size of sections to 62 bits.

----------------------------------------------------------------
Alexey Kardashevskiy (1):
      memory: give name to every AddressSpace

Avi Kivity (3):
      memory: iommu support
      vfio: abort if an emulated iommu is used
      pci: use memory core for iommu support

David Gibson (1):
      memory: Add iommu map/unmap notifiers

Jan Kiszka (4):
      memory: Introduce address_space_lookup_region
      exec: Allow unaligned address_space_rw
      exec: Resolve subpages in one step except for IOTLB fills
      exec: Implement subpage_read/write via address_space_rw

Paolo Bonzini (12):
      memory: move private types to exec.c
      exec: return MemoryRegion from address_space_translate
      Revert "memory: limit sections in the radix tree to the actual address space size"
      Revert "s390x: reduce TARGET_PHYS_ADDR_SPACE_BITS to 62"
      exec: reorganize mem_add to match Int128 version
      memory: make section size a 128-bit integer
      spapr: convert TCE API to use an opaque type
      spapr: make IOMMU translation go through IOMMUTLBEntry
      spapr: use memory core for iommu support
      dma: eliminate old-style IOMMU support
      spapr_vio: take care of creating our own AddressSpace/DMAContext
      dma: eliminate DMAContext

Peter Crosthwaite (3):
      memory: Fix comment typo
      memory: as_update_topology_pass: Improve comments
      memory: render_memory_region: factor out fr constant setters

Peter Maydell (1):
      exec.c: address_space_translate: handle access to addr 0 of 2^64 sized region

 cputlb.c                       |   4 +-
 dma-helpers.c                  | 190 +----------------
 exec.c                         | 458 ++++++++++++++++++++++-------------------
 hw/block/nvme.c                |   2 +-
 hw/core/loader.c               |   2 +-
 hw/display/exynos4210_fimd.c   |   4 +-
 hw/display/framebuffer.c       |   3 +-
 hw/dma/pl330.c                 |   8 +-
 hw/ide/ahci.c                  |  18 +-
 hw/ide/ahci.h                  |   4 +-
 hw/ide/ich.c                   |   2 +-
 hw/ide/macio.c                 |   4 +-
 hw/misc/vfio.c                 |   6 +-
 hw/pci/pci.c                   |  37 ++--
 hw/ppc/spapr_iommu.c           | 119 +++++------
 hw/ppc/spapr_pci.c             |  16 +-
 hw/ppc/spapr_vio.c             |  13 +-
 hw/scsi/megasas.c              |   4 +-
 hw/scsi/virtio-scsi.c          |   2 +-
 hw/scsi/vmw_pvscsi.c           |   2 +-
 hw/sd/sdhci.c                  |  22 +-
 hw/usb/hcd-ehci-pci.c          |   4 +-
 hw/usb/hcd-ehci-sysbus.c       |   2 +-
 hw/usb/hcd-ehci.c              |  12 +-
 hw/usb/hcd-ehci.h              |   2 +-
 hw/usb/hcd-ohci.c              |  30 +--
 hw/usb/libhw.c                 |   4 +-
 hw/virtio/dataplane/hostmem.c  |   2 +-
 hw/virtio/vhost.c              |   4 +-
 hw/virtio/virtio-balloon.c     |   2 +-
 hw/xen/xen_pt.c                |   6 +-
 include/exec/cputlb.h          |   4 +
 include/exec/memory-internal.h |  15 --
 include/exec/memory.h          | 114 +++++++++-
 include/hw/pci-host/spapr.h    |   3 +-
 include/hw/pci/pci.h           |  21 +-
 include/hw/pci/pci_bus.h       |   4 +-
 include/hw/ppc/spapr.h         |  12 +-
 include/hw/ppc/spapr_vio.h     |  21 +-
 include/qemu/int128.h          |  19 ++
 include/sysemu/dma.h           | 144 ++++---------
 kvm-all.c                      |  23 ++-
 memory.c                       |  79 ++++---
 target-s390x/cpu.h             |   5 +-
 target-sparc/mmu_helper.c      |   2 +-
 translate-all.c                |  10 +-
 xen-all.c                      |   6 +-
 47 files changed, 697 insertions(+), 773 deletions(-)