[PATCH 00/23] Remove cpu_get_physical_page_desc()

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

 



cpu_get_physical_page_desc() exposes the internals of the memory core to
callers; as such it prevents the refactoring planned there.  This patchset
converts all callers memory API equivalents and removes the function.

The conversion leaves a lot of potential for further cleanups; the
MemoryListener API (which replaces CPUPhysMemoryClient) guarantees matched
range_add and range_del calls, so the need to handle splitting is removed.
This is left for later.

Please review and test, especially the vhost and Xen parts, which I only
build tested.

Also available from:

  git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git memory/page_desc

Avi Kivity (23):
  memory: introduce memory_region_find()
  sysbus: add sysbus_address_space()
  memory: add memory_region_is_ram()
  framebuffer: drop use of cpu_get_physical_page_desc()
  memory: add memory_region_is_rom()
  loader: remove calls to cpu_get_physical_page_desc()
  framebuffer: drop use of cpu_physical_sync_dirty_bitmap()
  memory: replace cpu_physical_sync_dirty_bitmap() with a memory API
  memory: add API for observing updates to the physical memory map
  memory: add memory_region_is_logging()
  kvm: switch kvm slots to use host virtual address instead of
    ram_addr_t
  fixup: listener fixes
  kvm: convert to MemoryListener API
  vhost: convert to MemoryListener API
  xen, vga: add API for registering the framebuffer
  memory: temporarily add memory_region_get_ram_addr()
  xen: convert to MemoryListener API
  memory: remove CPUPhysMemoryClient
  kvm: avoid cpu_get_physical_page_desc()
  vhost: avoid cpu_get_physical_page_desc()
  virtio-balloon: avoid cpu_get_physical_page_desc()
  sparc: avoid cpu_get_physical_page_desc()
  Remove cpu_get_physical_page_desc()

 arch_init.c               |    6 +-
 cpu-all.h                 |    9 --
 cpu-common.h              |   24 ------
 exec.c                    |  175 +---------------------------------------
 hw/framebuffer.c          |   32 +++----
 hw/framebuffer.h          |    3 +
 hw/loader.c               |    9 +-
 hw/milkymist-vgafb.c      |    2 +-
 hw/omap_lcdc.c            |    4 +-
 hw/pl110.c                |    2 +-
 hw/pxa2xx_lcd.c           |   10 ++-
 hw/sysbus.c               |    5 +
 hw/sysbus.h               |    1 +
 hw/vga.c                  |    2 +
 hw/vhost.c                |  167 ++++++++++++++++++++++++++++++---------
 hw/vhost.h                |    5 +-
 hw/virtio-balloon.c       |   14 +++-
 hw/xen.h                  |    3 +
 kvm-all.c                 |  151 +++++++++++++++++++++--------------
 kvm.h                     |    4 +-
 memory.c                  |  193 ++++++++++++++++++++++++++++++++++++++++++---
 memory.h                  |  127 +++++++++++++++++++++++++++++
 target-i386/kvm.c         |    7 +-
 target-sparc/mmu_helper.c |    5 +-
 trace-events              |    2 +-
 xen-all.c                 |  143 ++++++++++++++++++++-------------
 xen-stub.c                |    4 +
 27 files changed, 695 insertions(+), 414 deletions(-)

-- 
1.7.7.1

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux