summaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/e820.c
diff options
context:
space:
mode:
authorYinghai Lu2012-10-23 01:35:18 +0200
committerH. Peter Anvin2012-10-24 20:52:21 +0200
commit6ede1fd3cb404c0016de6ac529df46d561bd558b (patch)
treec5537b527a5a065fff2bd9b33d003561a0d87206 /arch/x86/kernel/e820.c
parentx86/irq/ioapic: Check for valid irq_cfg pointer in smp_irq_move_cleanup_inter... (diff)
downloadkernel-qcow2-linux-6ede1fd3cb404c0016de6ac529df46d561bd558b.tar.gz
kernel-qcow2-linux-6ede1fd3cb404c0016de6ac529df46d561bd558b.tar.xz
kernel-qcow2-linux-6ede1fd3cb404c0016de6ac529df46d561bd558b.zip
x86, mm: Trim memory in memblock to be page aligned
We will not map partial pages, so need to make sure memblock allocation will not allocate those bytes out. Also we will use for_each_mem_pfn_range() to loop to map memory range to keep them consistent. Signed-off-by: Yinghai Lu <yinghai@kernel.org> Link: http://lkml.kernel.org/r/CAE9FiQVZirvaBMFYRfXMmWEcHbKSicQEHz4VAwUv0xFCk51ZNw@mail.gmail.com Acked-by: Jacob Shin <jacob.shin@amd.com> Signed-off-by: H. Peter Anvin <hpa@linux.intel.com> Cc: <stable@vger.kernel.org>
Diffstat (limited to 'arch/x86/kernel/e820.c')
-rw-r--r--arch/x86/kernel/e820.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
index ed858e9e9a74..df06ade26bef 100644
--- a/arch/x86/kernel/e820.c
+++ b/arch/x86/kernel/e820.c
@@ -1077,6 +1077,9 @@ void __init memblock_x86_fill(void)
memblock_add(ei->addr, ei->size);
}
+ /* throw away partial pages */
+ memblock_trim_memory(PAGE_SIZE);
+
memblock_dump_all();
}