xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] x86: remove x86_init.mapping.pagetable_reserve
@ 2011-06-07 18:13 Stefano Stabellini
  2011-06-07 18:13 ` [PATCH 1/3] x86: calculate precisely the memory needed by init_memory_mapping stefano.stabellini
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Stefano Stabellini @ 2011-06-07 18:13 UTC (permalink / raw)
  To: H. Peter Anvin
  Cc: H. Peter Anvin, Konrad Rzeszutek Wilk, Ingo Molnar, linux-kernel,
	xen-devel, Stefano Stabellini, Yinghai Lu

Currently find_early_table_space calculates an overestimate of how much
memory the pagetable for 1:1 mapping is going to need. After
kernel_physical_mapping_init completes we know exactly how much memory
we used so we memblock reserve only the used memory and "free" the rest.

This patch series modifies find_early_table_space to calculate the exact
amount of memory we need for the 1:1 mapping, so that we can memblock
reverve it right away and we don't need to free the unused memory after
kernel_physical_mapping_init.

At this point we can also safely revert "x86,xen: introduce
x86_init.mapping.pagetable_reserve".


The list of patches with diffstat follows:

Stefano Stabellini (3):
      x86: calculate precisely the memory needed by init_memory_mapping
      Revert "x86,xen: introduce x86_init.mapping.pagetable_reserve"
      x86: move memblock_x86_reserve_range PGTABLE to find_early_table_space

 arch/x86/include/asm/pgtable_types.h |    1 -
 arch/x86/include/asm/x86_init.h      |   12 -----
 arch/x86/kernel/x86_init.c           |    4 --
 arch/x86/mm/init.c                   |   87 +++++++++++++++++++---------------
 arch/x86/xen/mmu.c                   |   15 ------
 5 files changed, 49 insertions(+), 70 deletions(-)


Many thanks to Konrad that helped me review the patch series and
performed an impressive amount of tests:

*Configurations
baremetal Linux 64-bit
baremetal Linux 32-bit NOHIGHMEM, HIGHMEM4G and HIGHMEM64G
32-bit and 64-bit Linux on Xen
32-bit and 64-bit Linux HVM on Xen


*Hardware
AMD development box (Tilapia) - 8GB
AMD  BIOSTAR Grp N61PB-M2S/N61PB-M2S (Sempron) - 4GB
Intel DX58SO (Core i7) - 8GB
Supermicro X7DB8/X7DB8 (Harpertown) - 4GB
IBM x3850 (Cranford) - 8GB
MSI MS-7680/H61M-P23 (MS-7680) (SandyBridge, i2500)- 8GB


A git branch based on 3.0-rc1 is available here:

git://xenbits.xen.org/people/sstabellini/linux-pvhvm.git 3.0-rc1-rem_pg_reserve-4

- Stefano

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

end of thread, other threads:[~2011-06-22 17:16 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-06-07 18:13 [PATCH 0/3] x86: remove x86_init.mapping.pagetable_reserve Stefano Stabellini
2011-06-07 18:13 ` [PATCH 1/3] x86: calculate precisely the memory needed by init_memory_mapping stefano.stabellini
2011-06-20 22:37   ` H. Peter Anvin
2011-06-21 17:57     ` Stefano Stabellini
2011-06-21 18:02       ` H. Peter Anvin
2011-06-07 18:13 ` [PATCH 2/3] Revert "x86,xen: introduce x86_init.mapping.pagetable_reserve" stefano.stabellini
2011-06-07 18:13 ` [PATCH 3/3] x86: move memblock_x86_reserve_range PGTABLE to find_early_table_space stefano.stabellini
     [not found] ` <m2n.s.1QU0lc-137774@chiark.greenend.org.uk>
2011-06-17 17:11   ` [Xen-devel] [PATCH 1/3] x86: calculate precisely the memory needed by init_memory_mapping Ian Jackson
2011-06-20 19:16     ` Stefano Stabellini
2011-06-21 20:58 ` [PATCH 0/3] x86: remove x86_init.mapping.pagetable_reserve Ingo Molnar
2011-06-22 17:16   ` Stefano Stabellini

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