qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 00/40] Memory-related changes sneak peek for 1.6
@ 2013-05-07 14:16 Paolo Bonzini
  2013-05-07 14:16 ` [Qemu-devel] [PATCH 01/40] memory: assert that PhysPageEntry's ptr does not overflow Paolo Bonzini
                   ` (39 more replies)
  0 siblings, 40 replies; 78+ messages in thread
From: Paolo Bonzini @ 2013-05-07 14:16 UTC (permalink / raw)
  To: qemu-devel; +Cc: aik, jan.kiszka, qemulist, stefanha, david

Patches 1-10 are small changes, some of them bugfixes for the IOMMU
portion of the patches.

Patches 11-13 introduce three new address_space APIs and clean up
the dispatch logic a bit by removing memory_region_section_addr.

Patches 14-22 introduce IOMMU memory regions, convert sPAPR to the
new API, and finally eliminate DMAContext in favor of AddressSpace.

Patches 24-37 set an owner on all regions owned by hot-unpluggable
devices (and several others when that was easy), and add ref/unref
calls that keep the regions alive even if the owner is hot-unplugged.

Patches 38-40 make memory_region_find safe for usage outside the BQL.

These patches are also at git://github.com/bonzini/qemu.git, branch
iommu.

Please review!


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

Avi Kivity (5):
  memory: fix address space initialization/destruction
  memory: limit sections in the radix tree to the actual address space
    size
  memory: iommu support
  vfio: abort if an emulated iommu is used
  pci: use memory core for iommu support

Jan Kiszka (3):
  memory: Replace open-coded memory_region_is_romd
  memory: Rename readable flag to romd_mode
  memory: Introduce address_space_lookup_region

Paolo Bonzini (31):
  memory: assert that PhysPageEntry's ptr does not overflow
  memory: allow memory_region_find() to run on non-root memory regions
  memory: do not duplicate memory_region_destructor_none
  memory: make memory_global_sync_dirty_bitmap take an AddressSpace
  memory: create FlatView for new address spaces
  exec: remove obsolete comment
  memory: add address_space_valid
  memory: add address_space_translate
  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
  memory: add getter/setter for owner
  memory: add ref/unref
  memory: add ref/unref calls
  pci: set owner for BARs
  sysbus: set owner for MMIO regions
  acpi: add memory_region_set_owner calls
  misc: add memory_region_set_owner calls
  isa/portio: allow setting an owner
  vga: add memory_region_set_owner calls
  pci-assign: add memory_region_set_owner calls
  vfio: add memory_region_set_owner calls
  exec: check MRU in qemu_ram_addr_from_host
  memory: return MemoryRegion from qemu_ram_addr_from_host
  memory: ref/unref memory across address_space_map/unmap
  memory: access FlatView from a local variable
  memory: use a new FlatView pointer on every topology update
  memory: add reference counting to FlatView

 arch_init.c                           |    2 +-
 cputlb.c                              |   20 ++-
 dma-helpers.c                         |  180 +------------------
 exec.c                                |  315 ++++++++++++++++++++++-----------
 hw/acpi/ich9.c                        |    1 +
 hw/acpi/piix4.c                       |    5 +
 hw/block/pflash_cfi01.c               |    6 +-
 hw/block/pflash_cfi02.c               |    2 +-
 hw/char/serial-pci.c                  |    1 +
 hw/core/loader.c                      |    1 +
 hw/core/sysbus.c                      |    2 +
 hw/display/cirrus_vga.c               |   19 ++-
 hw/display/exynos4210_fimd.c          |    6 +
 hw/display/framebuffer.c              |   10 +-
 hw/display/qxl.c                      |    5 +-
 hw/display/vga-isa-mm.c               |    2 +-
 hw/display/vga-isa.c                  |    4 +-
 hw/display/vga-pci.c                  |    5 +-
 hw/display/vga.c                      |   19 ++-
 hw/display/vga_int.h                  |    9 +-
 hw/display/vmware_vga.c               |    4 +-
 hw/dma/pl330.c                        |    8 +-
 hw/i386/kvm/ioapic.c                  |    2 +
 hw/i386/kvm/pci-assign.c              |   11 ++
 hw/i386/kvmvapic.c                    |    1 +
 hw/ide/ahci.c                         |   18 +-
 hw/ide/ahci.h                         |    4 +-
 hw/ide/ich.c                          |    2 +-
 hw/ide/macio.c                        |    4 +-
 hw/isa/apm.c                          |    1 +
 hw/isa/isa-bus.c                      |    2 +
 hw/misc/pc-testdev.c                  |    7 +
 hw/misc/vfio.c                        |   12 ++
 hw/pci/pci.c                          |   53 +++---
 hw/ppc/spapr_iommu.c                  |  108 +++++-------
 hw/ppc/spapr_pci.c                    |   18 ++-
 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         |    7 +
 hw/virtio/vhost.c                     |    2 +
 hw/virtio/virtio-balloon.c            |    1 +
 hw/xen/xen_pt.c                       |    4 +
 include/exec/cpu-common.h             |    2 +-
 include/exec/cputlb.h                 |   12 +-
 include/exec/ioport.h                 |    3 +
 include/exec/memory.h                 |  186 +++++++++++++++----
 include/hw/pci-host/spapr.h           |    2 +-
 include/hw/pci/pci.h                  |   24 ++--
 include/hw/pci/pci_bus.h              |    5 +-
 include/hw/ppc/spapr.h                |   12 +-
 include/hw/ppc/spapr_vio.h            |   36 +++--
 include/hw/virtio/dataplane/hostmem.h |    1 +
 include/sysemu/dma.h                  |  158 +++++------------
 ioport.c                              |   10 +
 kvm-all.c                             |    2 +
 memory.c                              |  267 ++++++++++++++++++++++------
 target-arm/kvm.c                      |    2 +
 target-i386/kvm.c                     |    4 +-
 target-sparc/mmu_helper.c             |    1 +
 translate-all.c                       |    8 +-
 xen-all.c                             |    2 +
 70 files changed, 983 insertions(+), 734 deletions(-)

^ permalink raw reply	[flat|nested] 78+ messages in thread

end of thread, other threads:[~2013-05-20 10:41 UTC | newest]

Thread overview: 78+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-07 14:16 [Qemu-devel] [PATCH 00/40] Memory-related changes sneak peek for 1.6 Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 01/40] memory: assert that PhysPageEntry's ptr does not overflow Paolo Bonzini
2013-05-07 15:44   ` Peter Maydell
2013-05-07 16:08     ` Paolo Bonzini
2013-05-07 16:17       ` Peter Maydell
2013-05-09  3:41       ` liu ping fan
2013-05-09 16:46         ` Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 02/40] memory: allow memory_region_find() to run on non-root memory regions Paolo Bonzini
2013-05-07 15:35   ` Peter Maydell
2013-05-09  0:46   ` liu ping fan
2013-05-07 14:16 ` [Qemu-devel] [PATCH 03/40] memory: Replace open-coded memory_region_is_romd Paolo Bonzini
2013-05-07 15:59   ` Peter Maydell
2013-05-07 14:16 ` [Qemu-devel] [PATCH 04/40] memory: Rename readable flag to romd_mode Paolo Bonzini
2013-05-07 16:10   ` Peter Maydell
2013-05-07 17:04     ` [Qemu-devel] [PATCH v2] " Jan Kiszka
2013-05-07 17:07       ` Peter Maydell
2013-05-07 14:16 ` [Qemu-devel] [PATCH 05/40] memory: do not duplicate memory_region_destructor_none Paolo Bonzini
2013-05-07 14:36   ` Peter Maydell
2013-05-07 14:16 ` [Qemu-devel] [PATCH 06/40] memory: make memory_global_sync_dirty_bitmap take an AddressSpace Paolo Bonzini
2013-05-07 14:59   ` Peter Maydell
2013-05-07 14:16 ` [Qemu-devel] [PATCH 07/40] memory: fix address space initialization/destruction Paolo Bonzini
2013-05-07 15:46   ` Peter Maydell
2013-05-07 14:16 ` [Qemu-devel] [PATCH 08/40] memory: limit sections in the radix tree to the actual address space size Paolo Bonzini
2013-05-07 17:13   ` Peter Maydell
2013-05-07 17:24     ` Paolo Bonzini
2013-05-07 17:37       ` Alexander Graf
2013-05-07 14:16 ` [Qemu-devel] [PATCH 09/40] memory: create FlatView for new address spaces Paolo Bonzini
2013-05-07 17:25   ` Peter Maydell
2013-05-08  8:41     ` Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 10/40] exec: remove obsolete comment Paolo Bonzini
2013-05-07 14:25   ` Peter Maydell
2013-05-07 14:16 ` [Qemu-devel] [PATCH 11/40] memory: add address_space_valid Paolo Bonzini
2013-05-07 17:40   ` Peter Maydell
2013-05-13 14:03     ` Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 12/40] memory: add address_space_translate Paolo Bonzini
2013-05-07 18:08   ` Peter Maydell
2013-05-20 10:41     ` Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 13/40] memory: Introduce address_space_lookup_region Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 14/40] memory: iommu support Paolo Bonzini
2013-05-07 18:15   ` Peter Maydell
2013-05-07 14:16 ` [Qemu-devel] [PATCH 15/40] vfio: abort if an emulated iommu is used Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 16/40] spapr: convert TCE API to use an opaque type Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 17/40] spapr: make IOMMU translation go through IOMMUTLBEntry Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 18/40] spapr: use memory core for iommu support Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 19/40] dma: eliminate old-style IOMMU support Paolo Bonzini
2013-05-07 18:20   ` Peter Maydell
2013-05-13 14:04     ` Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 20/40] pci: use memory core for iommu support Paolo Bonzini
2013-05-07 18:30   ` Peter Maydell
2013-05-11  5:09     ` liu ping fan
2013-05-11  8:07       ` Peter Maydell
2013-05-10 13:07   ` Alexey Kardashevskiy
2013-05-10 13:55     ` Paolo Bonzini
2013-05-07 14:16 ` [Qemu-devel] [PATCH 21/40] spapr_vio: take care of creating our own AddressSpace/DMAContext Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 22/40] dma: eliminate DMAContext Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 23/40] memory: give name to every AddressSpace Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 24/40] memory: add getter/setter for owner Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 25/40] memory: add ref/unref Paolo Bonzini
2013-05-08  9:05   ` Stefan Hajnoczi
2013-05-07 14:17 ` [Qemu-devel] [PATCH 26/40] memory: add ref/unref calls Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 27/40] pci: set owner for BARs Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 28/40] sysbus: set owner for MMIO regions Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 29/40] acpi: add memory_region_set_owner calls Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 30/40] misc: " Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 31/40] isa/portio: allow setting an owner Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 32/40] vga: add memory_region_set_owner calls Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 33/40] pci-assign: " Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 34/40] vfio: " Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 35/40] exec: check MRU in qemu_ram_addr_from_host Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 36/40] memory: return MemoryRegion from qemu_ram_addr_from_host Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 37/40] memory: ref/unref memory across address_space_map/unmap Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 38/40] memory: access FlatView from a local variable Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 39/40] memory: use a new FlatView pointer on every topology update Paolo Bonzini
2013-05-07 14:17 ` [Qemu-devel] [PATCH 40/40] memory: add reference counting to FlatView Paolo Bonzini
2013-05-07 18:00   ` Jan Kiszka
2013-05-07 18:10     ` Jan Kiszka
2013-05-07 19:44     ` Paolo Bonzini
2013-05-08  7:57       ` Jan Kiszka

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).