x86, efi: Do not reserve boot services regions within reserved areas
authorMaarten Lankhorst <m.b.lankhorst@gmail.com>
Tue, 14 Jun 2011 17:53:09 +0000 (19:53 +0200)
committerIngo Molnar <mingo@elte.hu>
Sat, 18 Jun 2011 20:48:49 +0000 (22:48 +0200)
commit7d68dc3f1003a38948c55c803c32d1989dd49198
tree3c93edddda1ee71b9ce4aeeaa133bf627f7d691e
parentc11760c6d80ab6aa20e383cf378a7287305f591c
x86, efi: Do not reserve boot services regions within reserved areas

Commit 916f676f8dc started reserving boot service code since some systems
require you to keep that code around until SetVirtualAddressMap is called.

However, in some cases those areas will overlap with reserved regions.
The proper medium-term fix is to fix the bootloader to prevent the
conflicts from occurring by moving the kernel to a better position,
but the kernel should check for this possibility, and only reserve regions
which can be reserved.

Signed-off-by: Maarten Lankhorst <m.b.lankhorst@gmail.com>
Link: http://lkml.kernel.org/r/4DF7A005.1050407@gmail.com
Acked-by: Matthew Garrett <mjg@redhat.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/include/asm/memblock.h
arch/x86/mm/memblock.c
arch/x86/platform/efi/efi.c