linux-stable-rt/arch/x86_64/kernel
Andi Kleen ac71d12c99 [PATCH] x86_64: Avoid EBDA area in early boot allocator
Based on analysis&patch from Robert Hentosch

Observed on a Dell PE6850 with 16GB

The problem occurs very early on, when the kernel allocates space for the
temporary memory map called bootmap. The bootmap overlaps the EBDA region.
EBDA region is not historically reserved in the e820 mapping. When the
bootmap is freed it marks the EBDA region as usable.

If you notice in setup.c there is already code to work around the EBDA
in reserve_ebda_region(), this check however occurs after the bootmap
is allocated and doesn't prevent the bootmap from using this range.

AK: I redid the original patch. Thanks also to Jan Beulich for
spotting some mistakes.

Cc: Robert_Hentosch@dell.com
Cc: jbeulich@novell.com
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-05-08 09:34:56 -07:00
..
acpi
cpufreq
Makefile
aperture.c
apic.c
asm-offsets.c
crash.c
crash_dump.c
e820.c [PATCH] x86_64: Avoid EBDA area in early boot allocator 2006-05-08 09:34:56 -07:00
early_printk.c
entry.S
functionlist
genapic.c
genapic_cluster.c
genapic_flat.c
head.S
head64.c
i387.c
i8259.c
init_task.c
io_apic.c [PATCH] x86_64: avoid IRQ0 ioapic pin collision 2006-05-08 09:34:56 -07:00
ioport.c
irq.c
kprobes.c
ldt.c
machine_kexec.c
mce.c [PATCH] Remove __devinit and __cpuinit from notifier_call definitions 2006-04-26 08:30:03 -07:00
mce_amd.c [PATCH] Remove __devinit and __cpuinit from notifier_call definitions 2006-04-26 08:30:03 -07:00
mce_intel.c
module.c
mpparse.c [PATCH] x86_64: avoid IRQ0 ioapic pin collision 2006-05-08 09:34:56 -07:00
nmi.c
pci-dma.c
pci-gart.c [PATCH] x86_64: Check for too many northbridges in IOMMU code 2006-05-08 09:34:56 -07:00
pci-nommu.c
pci-swiotlb.c
pmtimer.c
process.c
ptrace.c [PATCH] drop task argument of audit_syscall_{entry,exit} 2006-05-01 06:06:18 -04:00
reboot.c
relocate_kernel.S
setup.c [PATCH] x86_64: Avoid EBDA area in early boot allocator 2006-05-08 09:34:56 -07:00
setup64.c
signal.c
smp.c
smpboot.c
suspend.c
suspend_asm.S
sys_x86_64.c
syscall.c
time.c
trampoline.S
traps.c [PATCH] x86_64: add nmi_exit to die_nmi 2006-05-08 09:34:56 -07:00
vmlinux.lds.S
vsmp.c
vsyscall.c
x8664_ksyms.c