[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [XenPPC] [PATCH 0 of 5] [PATCH] replace extent list with p2m/m2p mapping
Revised set of patches to addressing memory management [1] ugliness. Applies to xenppc-unstable.hg changeset: 14607:0902dfafca1c dom0 booted, multiple domUs created/used/destroyed Patches: add_arch_hook_for_max_mem.patch: - dummy call for x86/ia64/ppc clean_up_dom0_memory_alloc.patch: - Move rma allocation into construct_dom0() - Move vcpu0 allocation into construct_dom0() - Allow dom0_mem to set d->max_pages - Be verbose when aligning dom0_mem with RMA check add_powerpc_guest_physmap_max_mem.patch: - implement max_mem arch hook for ppc. - have dom0 create p2m table ppc_guest_physmap_add_remove_page.patch: - implement add/remove page hooks for ppc. - change allocate_extents not call add_extent() - for each page allocated, call physmap_add_page() to get p2m mapping - change pfn2mfn to use p2m table - change mfn_to_gmfn() to use p2m table - use d->tot_pages rather than extent list to create memory nodes in dom0 OF tree and avoid putting memory in I/O hole. - create machine_to_phys_table() for m2p mapping - wire up m2p accessors {get/set}_gpfn_from_mfn() - change guest_physmap_{add/remove}_page() to do m2p mapping - change mfn_to_gmfn() to use m2p mapping instead of extent calculation - add check for page ownership in mfn_to_gmfn() - add platform.c/platform.h to account for iohole - remove old struct page_extents and related functions - change cpu_io_mfn() to use platform code - removed PFN_TYPE_RMA, not needed - change pfnlist/getmemlist to use p2m map xc_linux_build_use_populate_physmap.patch: - change libxc/powerc64/xc_linux_build() to use populate_physmap hcall Note that a 1 line patch to linux is needed to allow populate_physmap to work. I'll send that seperately from this patchset. Signed-off-by: Ryan Harper <ryanh@xxxxxxxxxx> 1. http://lists.xensource.com/archives/html/xen-ppc-devel/2007-02/msg00047.html 20 files changed, 387 insertions(+), 181 deletions(-) tools/libxc/powerpc64/xc_linux_build.c | 37 +++++- xen/arch/powerpc/Makefile | 1 xen/arch/powerpc/domain.c | 65 ++++++++++ xen/arch/powerpc/domain_build.c | 82 ++++++++++--- xen/arch/powerpc/domctl.c | 18 +-- xen/arch/powerpc/iommu.c | 3 xen/arch/powerpc/memory.c | 1 xen/arch/powerpc/mm.c | 192 ++++++++++++++++---------------- xen/arch/powerpc/ofd_fixup_memory.c | 33 +++-- xen/arch/powerpc/platform.c | 35 +++++ xen/arch/powerpc/powerpc64/ppc970.c | 8 - xen/arch/powerpc/setup.c | 7 - xen/common/domctl.c | 4 xen/common/memory.c | 3 xen/include/asm-ia64/shadow.h | 2 xen/include/asm-powerpc/domain.h | 9 - xen/include/asm-powerpc/mm.h | 29 +--- xen/include/asm-powerpc/platform.h | 27 ++++ xen/include/asm-powerpc/shadow.h | 10 + xen/include/asm-x86/shadow.h | 2 _______________________________________________ Xen-ppc-devel mailing list Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ppc-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |