linux_dsm_epyc7002/arch/x86/kernel
Paul Jackson c4ba1320b7 x86 boot: allow overlapping early reserve memory ranges
Add support for overlapping early memory reservations.

In general, they still can't overlap, and will panic
with "Overlapping early reservations" if they do overlap.

But if a memory range is reserved with the new call:
    reserve_early_overlap_ok()
rather than with the usual call:
    reserve_early()
then subsequent early reservations are allowed to overlap.

This new reserve_early_overlap_ok() call is only used in one
place so far, which is the "BIOS reserved" reservation for the
the EBDA region, which out of Paranoia reserves more than what
the BIOS might have specified, and which thus might overlap with
another legitimate early memory reservation (such as, perhaps,
the EFI memmap.)

Signed-off-by: Paul Jackson <pj@sgi.com>
Cc: "Yinghai Lu" <yhlu.kernel@gmail.com>
Cc: "Jack Steiner" <steiner@sgi.com>
Cc: "Mike Travis" <travis@sgi.com>
Cc: "Huang
Cc: Ying" <ying.huang@intel.com>
Cc: "Andi Kleen" <andi@firstfloor.org>
Cc: "Andrew Morton" <akpm@linux-foundation.org>
Cc: Paul Jackson <pj@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-07-08 12:51:26 +02:00
..
acpi x86: check command line when CONFIG_X86_MPPARSE is not set, v2 2008-07-08 12:48:31 +02:00
cpu x86: move boot_params declaring to setup.c 2008-07-08 12:50:17 +02:00
.gitignore
alternative.c x86: harden kernel code patching 2008-04-25 19:54:07 +02:00
amd_iommu_init.c x86, AMD IOMMU: remove unnecessary code from the iommu_enable function 2008-07-04 11:44:44 +02:00
amd_iommu.c x86, AMD IOMMU: flush domain TLB when there is more than one page to flush 2008-07-04 11:44:40 +02:00
aperture_64.c Merge branch 'x86/mpparse' into x86/devel 2008-07-08 11:14:58 +02:00
apic_32.c x86: check command line when CONFIG_X86_MPPARSE is not set, v2 2008-07-08 12:48:31 +02:00
apic_64.c x86: provide connect_bsp_APIC for x86_64 2008-07-08 12:48:22 +02:00
apm_32.c x86: Switch apm to unlocked_kernel 2008-05-25 12:03:27 +02:00
asm-offsets_32.c x86: use kbuild.h 2008-04-29 08:06:29 -07:00
asm-offsets_64.c x86: use kbuild.h 2008-04-29 08:06:29 -07:00
asm-offsets.c
audit_64.c
bootflag.c x86: coding style cleanup for kernel/bootflag.c 2008-01-30 13:32:31 +01:00
cpuid.c PM: Remove destroy_suspended_device() 2008-04-19 19:10:28 -07:00
crash_dump_32.c
crash_dump_64.c
crash.c x86: allow machine_crash_shutdown to be replaced 2008-04-27 12:00:29 +03:00
doublefault_32.c x86: unify tss_struct 2008-01-30 13:31:31 +01:00
ds.c x86: debug Store - call kfree if only we really need it 2008-04-17 17:41:34 +02:00
e820.c x86 boot: allow overlapping early reserve memory ranges 2008-07-08 12:51:26 +02:00
early_printk.c x86: coding style fixes to x86/kernel/early_printk.c 2008-04-17 17:40:51 +02:00
early-quirks.c x86: I/O APIC: remove parameters to fiddle with the 8259A 2008-07-08 09:12:54 +02:00
efi_32.c x86: fix Intel Mac booting with EFI 2008-07-03 08:19:18 +02:00
efi_64.c x86: add flags parameter to reserve_bootmem_generic() 2008-07-08 11:49:49 +02:00
efi_stub_32.S
efi_stub_64.S x86: EFI runtime service support 2008-01-30 13:31:19 +01:00
efi.c x86 boot: x86_64 efi compiler warning fix 2008-07-08 12:50:29 +02:00
entry_32.S Merge branch 'linus' into x86/irq 2008-06-16 11:27:45 +02:00
entry_64.S Merge branch 'x86/uv' into x86/devel 2008-07-08 12:24:13 +02:00
genapic_64.c x86: introduce max_physical_apicid for bigsmp switching 2008-06-10 11:32:09 +02:00
genapic_flat_64.c x86: use cpumask_of_cpu() 2008-04-17 17:41:36 +02:00
genx2apic_uv_x.c x86, uv: update macros used by UV platform 2008-06-02 12:56:00 +02:00
geode_32.c x86, geode: add a VSA2 ID for General Software 2008-06-19 14:19:03 +02:00
head32.c x86: extract common part of head32.c and head64.c into head.c 2008-06-05 15:10:02 +02:00
head64.c Merge branch 'x86/numa' into x86/devel 2008-07-08 11:59:23 +02:00
head_32.S x86: boot secondary cpus through initial_code 2008-07-08 12:48:18 +02:00
head_64.S x86: move x86_64 gdt closer to i386 2008-07-08 12:48:16 +02:00
head.c x86 boot: allow overlapping early reserve memory ranges 2008-07-08 12:51:26 +02:00
hpet.c x86: clean up computation of HPET .mult variables 2008-05-12 21:27:54 +02:00
i386_ksyms_32.c Generic semaphore implementation 2008-04-17 10:42:34 -04:00
i387.c x86 ptrace: fix PTRACE_GETFPXREGS error 2008-07-01 11:03:31 +02:00
i8237.c
i8253.c x86: cleanup div_sc() usage 2008-04-26 17:35:47 +02:00
i8259.c i8259: fix final ugliness 2008-06-02 11:55:52 +02:00
init_task.c [PATCH] take init_files to fs/file.c 2008-05-16 17:22:20 -04:00
io_apic_32.c x86: change __setup_vector_irq with setup_vector_irq 2008-07-08 12:48:21 +02:00
io_apic_64.c x86: change __setup_vector_irq with setup_vector_irq 2008-07-08 12:48:21 +02:00
io_delay.c x86: add dmi quirk for io_delay 2008-03-26 22:23:40 +01:00
ioport.c x86: refactor ioport unification 2008-01-30 13:33:10 +01:00
ipi.c x86: ipi.c: removed duplicated include 2008-05-25 08:58:32 +02:00
irq_32.c Merge branch 'x86/irq' into x86/devel 2008-07-08 09:53:57 +02:00
irq_64.c x86: make /proc/stat account for all interrupts 2008-05-25 07:11:49 +02:00
irqinit_32.c x86: rename the i8259_32/64.c leftovers to irqinit_32/64.c 2008-05-24 16:47:39 +02:00
irqinit_64.c x86: rename the i8259_32/64.c leftovers to irqinit_32/64.c 2008-05-24 16:47:39 +02:00
k8.c
kdebugfs.c x86, boot: export linked list of struct setup_data via debugfs 2008-04-26 21:34:42 +02:00
kgdb.c x86: KGDB build fix 2008-04-19 19:19:54 +02:00
kprobes.c x86: replace most VM86 flags with flags from processor-flags.h 2008-04-17 17:41:33 +02:00
kvm.c x86: KVM guest: hypercall batching 2008-04-27 12:00:28 +03:00
kvmclock.c x86: KVM guest: Use the paravirt clocksource structs and functions 2008-06-24 21:02:33 +03:00
ldt.c x86: avoid re-loading LDT in unrelated address spaces 2008-05-22 19:11:20 +02:00
machine_kexec_32.c x86: arch/x86/kernel/machine_kexec_32.c: remove extra semicolons 2008-06-24 18:37:49 +02:00
machine_kexec_64.c vmcoreinfo: add the symbol "phys_base" 2008-04-02 15:28:19 -07:00
Makefile x86: merge setup64.c into common_64.c 2008-07-08 12:50:10 +02:00
mca_32.c x86: coding style fixes to arch/x86/kernel/mca_32.c 2008-04-17 17:40:49 +02:00
mfgpt_32.c geode: fix modular build 2008-06-12 21:25:51 +02:00
microcode.c x86: microcode: cosmetic changes 2008-07-03 11:37:20 +02:00
mmconf-fam10h_64.c x86: move mmconfig declarations to header 2008-05-30 15:45:17 -07:00
module_32.c
module_64.c
mpparse.c x86: add flags parameter to reserve_bootmem_generic() 2008-07-08 11:49:49 +02:00
msr.c PM: Remove destroy_suspended_device() 2008-04-19 19:10:28 -07:00
nmi.c Merge branch 'x86/nmi' into x86/devel 2008-07-08 12:17:08 +02:00
numaq_32.c x86: make generic arch support NUMAQ 2008-06-10 11:34:42 +02:00
olpc.c x86: olpc: add One Laptop Per Child architecture support 2008-04-29 08:06:07 -07:00
paravirt_patch_32.c x86: move patching code to arch-specific file. 2008-01-30 13:32:10 +01:00
paravirt_patch_64.c x86: add stringify header 2008-01-30 13:33:19 +01:00
paravirt.c Merge branch 'x86/fixmap' into x86/devel 2008-07-08 12:24:29 +02:00
pci-calgary_64.c x86: remove duplicate get_bios_ebda() from rio.h 2008-04-26 17:35:47 +02:00
pci-dma.c Merge branches 'x86/mmio', 'x86/delay', 'x86/idle', 'x86/oprofile', 'x86/debug', 'x86/ptrace' and 'x86/amd-iommu' into x86/devel 2008-07-08 09:46:15 +02:00
pci-gart_64.c x86 gart: remove unnecessary set_bit_string 2008-06-30 10:52:40 +02:00
pci-nommu.c x86: unify pci-nommu 2008-04-19 19:19:57 +02:00
pci-swiotlb_64.c x86: dma-ops on highmem fix 2008-04-19 19:19:56 +02:00
pcspeaker.c
pmtimer_64.c
probe_roms_32.c x86: seperate probe_roms into another file 2008-07-08 12:50:05 +02:00
process_32.c x86: move cpu_exit_clear to process_32.c 2008-07-08 12:48:24 +02:00
process_64.c Merge commit 'v2.6.26-rc9' into x86/cpu 2008-07-08 07:47:47 +02:00
process.c x86: add C1E aware idle function, fix 2008-07-08 07:47:37 +02:00
ptrace.c x86 ptrace: fix PTRACE_GETFPXREGS error 2008-07-01 11:03:31 +02:00
pvclock.c x86: Add structs and functions for paravirt clocksource 2008-06-24 21:02:31 +03:00
quirks.c x86: add another PCI ID for ICH6 force hpet. 2008-06-05 15:11:35 +02:00
reboot_fixups_32.c x86: constify data in reboot.c 2008-05-25 08:58:30 +02:00
reboot.c x86: constify data in reboot.c 2008-05-25 08:58:30 +02:00
relocate_kernel_32.S x86: relocate_kernel - use predefined macroses for page attributes 2008-04-17 17:41:29 +02:00
relocate_kernel_64.S x86: relocate_kernel - use predefined macroses for page attributes 2008-04-17 17:41:29 +02:00
rtc.c provide rtc_cmos platform device 2008-06-12 18:05:42 -07:00
scx200_32.c x86: fix sparse warning in kernel/scx200_32.c 2008-01-31 22:05:45 +01:00
setup_32.c x86: setup_arch 32bit move kvm_guest_init later 2008-07-08 12:50:27 +02:00
setup.c x86: move boot_params declaring to setup.c 2008-07-08 12:50:17 +02:00
sigframe.h x86: move struct definitions to unifed sigframe.h 2008-04-17 17:40:46 +02:00
signal_32.c signals: x86 TS_RESTORE_SIGMASK 2008-04-30 08:29:37 -07:00
signal_64.c signals: x86 TS_RESTORE_SIGMASK 2008-04-30 08:29:37 -07:00
smp.c x86: fix app crashes after SMP resume 2008-05-13 19:36:12 +02:00
smpboot.c x86: take load_sp0 out of smpboot.c 2008-07-08 12:48:25 +02:00
smpcommon_32.c x86: create smpcommon.c 2008-04-17 17:40:55 +02:00
smpcommon.c x86: create smpcommon.c 2008-04-17 17:40:55 +02:00
srat_32.c x86: numa32 pfn print out using hex instead 2008-07-08 12:50:23 +02:00
stacktrace.c x86: don't save unreliable stack trace entries 2008-02-26 12:55:58 +01:00
step.c x86: prevent unconditional writes to DebugCtl MSR 2008-04-17 17:40:58 +02:00
summit_32.c x86: make generic arch support NUMAQ 2008-06-10 11:34:42 +02:00
sys_i386_32.c x86: coding style fixes to arch/x86/kernel/sys_i386_32.c 2008-06-10 12:34:54 +02:00
sys_x86_64.c unified (weak) sys_pipe implementation 2008-05-03 13:50:33 -07:00
syscall_64.c x86: coding style fixes to arch/x86/kernel/syscall_64.c 2008-04-17 17:40:48 +02:00
syscall_table_32.S timerfd: wire the new timerfd API to the x86 family 2008-02-05 09:44:07 -08:00
tce_64.c
test_nx.c x86: Explicitly include required header files. 2008-04-17 17:41:15 +02:00
test_rodata.c x86: include proper prototypes for rodata_test 2008-02-14 23:30:20 +01:00
time_32.c x86: I/O APIC: AEOI timer acknowledgement clean-ups 2008-07-08 09:12:53 +02:00
time_64.c x86: use cpu_khz for loops_per_jiffy calculation, cleanup 2008-06-24 13:53:46 +02:00
tlb_32.c x86: create tlb files 2008-04-17 17:40:56 +02:00
tlb_64.c SGI UV: TLB shootdown using broadcast assist unit, cleanups 2008-07-08 12:23:24 +02:00
tlb_uv.c x86, SGI UV: uv_ptc_proc_write fix 2008-07-08 12:23:31 +02:00
tls.c asmlinkage_protect replaces prevent_tail_call 2008-04-10 17:28:26 -07:00
tls.h x86: x86 user_regset TLS 2008-01-30 13:31:52 +01:00
topology.c x86: fix section mismatch warning in topology.c:arch_register_cpu 2008-02-19 16:18:30 +01:00
trampoline_32.S x86: trampoline_32.S - switch to .cpuinit.data 2008-04-26 17:35:47 +02:00
trampoline_64.S x86: move suspend wakeup code to C 2008-04-17 17:41:37 +02:00
trampoline.c x86: extend e820 ealy_res support 32bit 2008-05-25 10:55:11 +02:00
traps_32.c x86: don't use gdt_page openly. 2008-07-08 12:48:15 +02:00
traps_64.c Merge branch 'x86/nmi' into x86/devel 2008-07-08 12:17:08 +02:00
tsc_32.c Merge branches 'x86/mmio', 'x86/delay', 'x86/idle', 'x86/oprofile', 'x86/debug', 'x86/ptrace' and 'x86/amd-iommu' into x86/devel 2008-07-08 09:46:15 +02:00
tsc_64.c Merge branch 'linus' into x86/timers 2008-06-16 11:20:57 +02:00
tsc_sync.c x86: add warning to check_tsc_warp() 2008-01-30 13:33:24 +01:00
verify_cpu_64.S
vm86_32.c x86: replace most VM86 flags with flags from processor-flags.h 2008-04-17 17:41:33 +02:00
vmi_32.c x86: unify KERNEL_PGD_PTRS 2008-04-24 23:57:31 +02:00
vmiclock_32.c x86: unify interrupt vector defines 2008-05-12 21:28:05 +02:00
vmlinux_32.lds.S x86: move tracedata to RODATA 2008-05-25 07:09:47 +02:00
vmlinux_64.lds.S Merge branches 'x86/numa-fixes', 'x86/apic', 'x86/apm', 'x86/bitops', 'x86/build', 'x86/cleanups', 'x86/cpa', 'x86/cpu', 'x86/defconfig', 'x86/gart', 'x86/i8259', 'x86/intel', 'x86/irqstats', 'x86/kconfig', 'x86/ldt', 'x86/mce', 'x86/memtest', 'x86/pat', 'x86/ptemask', 'x86/resumetrace', 'x86/threadinfo', 'x86/timers', 'x86/vdso' and 'x86/xen' into x86/devel 2008-07-08 09:16:56 +02:00
vmlinux.lds.S
vsmp_64.c x86: vsmp_64 add missing includes 2008-05-25 08:58:24 +02:00
vsyscall_64.c "make namespacecheck" fixes 2008-04-24 23:15:44 +02:00
x8664_ksyms_64.c x86: move x86_64 gdt closer to i386 2008-07-08 12:48:16 +02:00