|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH 0/3] x86: remove x86_init.mapping.pagetable_reserve
To: |
"H. Peter Anvin" <hpa@xxxxxxxxx> |
Subject: |
[Xen-devel] [PATCH 0/3] x86: remove x86_init.mapping.pagetable_reserve |
From: |
Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> |
Date: |
Tue, 7 Jun 2011 19:13:03 +0100 |
Cc: |
xen-devel@xxxxxxxxxxxxxxxxxxx, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>, Stabellini <Stefano.Stabellini@xxxxxxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx, Stefano, Ingo Molnar <mingo@xxxxxxx>, "H. Peter Anvin" <hpa@xxxxxxxxxxxxxxx>, Yinghai Lu <yinghai@xxxxxxxxxx> |
Delivery-date: |
Tue, 07 Jun 2011 11:11:02 -0700 |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
List-help: |
<mailto:xen-devel-request@lists.xensource.com?subject=help> |
List-id: |
Xen developer discussion <xen-devel.lists.xensource.com> |
List-post: |
<mailto:xen-devel@lists.xensource.com> |
List-subscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe> |
List-unsubscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
User-agent: |
Alpine 2.00 (DEB 1167 2008-08-23) |
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
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|