linux/arch/x86_64/kernel
Vivek Goyal 983d5dbdb2 [PATCH] x86_64: Fix SMP bootup with CONFIG_KDUMP enabled
o This fix was posted for i386 long back. Posting it for x86_64.

  http://marc.theaimsgroup.com/?l=linux-kernel&m=110380103229830&w=2

o This patch fixes the problem of secondary cpus boot up. This situation
  is faced when kernel is built for default locations like 16MB and
  onwards. In this configuration, only primary cpu (BP) comes and
  secondary cpus don't boot.

o Problem occurs because in trampoline code, lgdt is not able to load the
  GDT as it happens to be situated beyond 16MB. This is due to the fact
  that cpu is still in real mode and default operand size is 16bit.

o This patch uses lgdtl instead of lgdt to force operand size to 32
  instead of 16.

Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-11 19:09:58 -08:00
..
acpi [PATCH] x86-64: more gratitious linux/irq.h includes 2005-09-12 10:50:58 -07:00
cpufreq Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
aperture.c [PATCH] x86_64: Fix off by one in IOMMU check 2006-01-11 19:04:54 -08:00
apic.c [PATCH] x86_64: Some housekeeping in local APIC code 2006-01-11 19:05:03 -08:00
asm-offsets.c [PATCH] x86_64: Implement is_compat_task the right way 2006-01-11 19:04:53 -08:00
crash_dump.c [PATCH] kdump: read previous kernel's memory 2006-01-10 08:01:28 -08:00
crash.c [PATCH] kdump: x86_64 save cpu registers upon crash 2006-01-10 08:01:28 -08:00
e820.c [PATCH] kdump: x86_64: add memmmap command line option 2006-01-10 08:01:27 -08:00
early_printk.c [PATCH] i386/x86-64: make setup_early_printk() usage consistent 2006-01-11 19:05:04 -08:00
entry.S [PATCH] x86_64: Remove useless KDB vector 2006-01-11 19:05:00 -08:00
genapic_cluster.c [PATCH] x86_64/i386: Remove preempt disable calls in lowlevel IPI 2006-01-11 19:01:57 -08:00
genapic_flat.c [PATCH] x86_64/i386: Remove preempt disable calls in lowlevel IPI 2006-01-11 19:01:57 -08:00
genapic.c [PATCH] x86-64: Use physflat on Intel for < 8 CPUs with CPU hotplug 2005-09-12 10:50:56 -07:00
head64.c [PATCH] i386/x86-64: make setup_early_printk() usage consistent 2006-01-11 19:05:04 -08:00
head.S [PATCH] x86_64: Remove unused segments 2006-01-11 19:05:01 -08:00
i387.c [PATCH] x86_64: Change init sections for CPU hotplug support 2005-06-25 16:24:30 -07:00
i8259.c [PATCH] x86_64: Remove useless KDB vector 2006-01-11 19:05:00 -08:00
init_task.c [PATCH] Change maxaligned_in_smp alignemnt macros to internodealigned_in_smp macros 2006-01-08 20:13:38 -08:00
io_apic.c [PATCH] x86_64: Some housekeeping in local APIC code 2006-01-11 19:05:03 -08:00
ioport.c [PATCH] capable/capability.h (arch/) 2006-01-11 18:42:14 -08:00
irq.c [PATCH] x86_64: Node local pda take 2 -- cpu_pda preparation 2006-01-11 19:04:59 -08:00
kprobes.c [PATCH] kprobes: fix race in recovery of reentrant probe 2006-01-11 18:42:12 -08:00
ldt.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
machine_kexec.c [PATCH] x86_64 machine_kexec: Use standard pagetable helpers 2005-07-29 13:12:49 -07:00
Makefile [PATCH] x86_64: Inclusion of ScaleMP vSMP architecture patches - vsmp_arch 2006-01-11 19:05:01 -08:00
mce_amd.c [PATCH] x86_64: Sparse warnings fix. 2006-01-11 19:05:00 -08:00
mce_intel.c [PATCH] x86_64: Some housekeeping in local APIC code 2006-01-11 19:05:03 -08:00
mce.c [PATCH] x86_64: Use safe_smp_processor_id in MCE handler 2006-01-11 19:05:03 -08:00
module.c [PATCH] uml: kludgy compilation fixes for x86-64 subarch modules support 2005-05-05 16:36:33 -07:00
mpparse.c [PATCH] x86_64: Increase the maximum number of local APICs to the maximum 2005-11-14 19:55:17 -08:00
nmi.c [PATCH] x86_64: Fix warning in nmi.c on uniprocessor kernels 2006-01-11 19:04:59 -08:00
pci-dma.c [PATCH] x86_64: Use function pointers to call DMA mapping functions 2006-01-11 19:04:55 -08:00
pci-gart.c [PATCH] x86_64: Use function pointers to call DMA mapping functions 2006-01-11 19:04:55 -08:00
pci-nommu.c [PATCH] x86_64: Tell user to enable GART_IOMMU when needed 2006-01-11 19:04:59 -08:00
pci-swiotlb.c [PATCH] x86_64: Use function pointers to call DMA mapping functions 2006-01-11 19:04:55 -08:00
pmtimer.c [PATCH] x86_64: Add pmtimer support 2005-05-17 07:59:15 -07:00
process.c [PATCH] x86_64: Add idle notifiers 2006-01-11 19:04:55 -08:00
ptrace.c [PATCH] x86_64: allow setting RF in EFLAGS 2006-01-11 19:05:00 -08:00
reboot.c [PATCH] i386/x86-64: Don't IPI to offline cpus on shutdown 2006-01-11 19:04:50 -08:00
relocate_kernel.S [PATCH] kexec: x86_64 kexec implementation 2005-06-25 16:24:50 -07:00
setup64.c [PATCH] x86_64: Allocate PDAs in the local node 2006-01-11 19:04:59 -08:00
setup.c [PATCH] x86_64: Don't confuse noapic with noapictimer 2006-01-11 19:05:04 -08:00
signal.c [PATCH] x86_64: Save/restore CS in 64bit signal handlers and force __USER_CS for CS 2005-11-14 19:55:15 -08:00
smp.c [PATCH] x86_64: Remove useless KDB vector 2006-01-11 19:05:00 -08:00
smpboot.c [PATCH] x86_64: Some housekeeping in local APIC code 2006-01-11 19:05:03 -08:00
suspend_asm.S [PATCH] x86_64: Set up safe page tables during resume 2005-10-10 08:36:46 -07:00
suspend.c [PATCH] x86_64: Align and pad x86_64 GDT on page boundary 2006-01-11 19:04:53 -08:00
sys_x86_64.c [PATCH] x86_64: Use common sys_time64 2005-11-14 19:55:17 -08:00
syscall.c [PATCH] x86/x86_64: mark rodata section read-only: make some datastructures const 2006-01-06 08:33:36 -08:00
time.c [PATCH] x86_64: Fix get_cmos_time() 2006-01-11 19:05:03 -08:00
trampoline.S [PATCH] x86_64: Fix SMP bootup with CONFIG_KDUMP enabled 2006-01-11 19:09:58 -08:00
traps.c [PATCH] x86_64: Display meaningful part of filename during BUG() 2006-01-11 19:05:03 -08:00
vmlinux.lds.S [PATCH] x86_64: Allow compilation on a 32bit biarch toolchain 2006-01-11 19:04:52 -08:00
vsmp.c [PATCH] x86_64: Inclusion of ScaleMP vSMP architecture patches - vsmp_arch 2006-01-11 19:05:01 -08:00
vsyscall.c [PATCH] x86_64: Use standard __always_inline in vsyscall.c 2006-01-11 19:04:58 -08:00
x8664_ksyms.c [PATCH] x86_64: No need to export get_cmos_time anymore 2006-01-11 19:05:02 -08:00