android_kernel_xiaomi_sm8350/arch/i386/kernel
Eric W. Biederman 63d30298ef [PATCH] kexec: x86 shutdown APICs during crash_shutdown
In the case of a crash/panic an architecture specific function
machine_crash_shutdown is called.  This patch adds to the x86 machine_crash
function the standard kernel code for shutting down apics.

Every line of code added to that function increases the risk that we will call
code after a kernel panic that is not safe.

This patch should not make it to the stable kernel without a being reviewed a
lot more.  It is unclear how much a hardned kernel can take when it comes to
misconfigured apics.  So since a normal kernel has problems this patch does a
clean shutdown.

It is my expectation this patch will be dropped from future generations of the
kexec work.  But for the moment it is a crutch to keep from breaking
everything.

Signed-off-by: Eric Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-25 16:24:50 -07:00
..
acpi [PATCH] dmi: move ACPI sleep quirk 2005-06-25 16:24:28 -07:00
cpu [PATCH] suspend/resume SMP support 2005-06-25 16:24:32 -07:00
timers [PATCH] init call cleanup 2005-06-25 16:24:30 -07:00
apic.c [PATCH] kexec: x86: resture apic virtual wire mode on shutdown 2005-06-25 16:24:47 -07:00
apm.c [PATCH] apm.c: ignore_normal_resume is set a bit too late 2005-06-14 07:19:35 -07:00
asm-offsets.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bootflag.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cpuid.c [PATCH] class: convert arch/* to use the new class api instead of class_simple 2005-06-20 15:15:09 -07:00
crash.c [PATCH] kexec: x86 shutdown APICs during crash_shutdown 2005-06-25 16:24:50 -07:00
dmi_scan.c [PATCH] dmi: spring cleanup 2005-06-25 16:24:28 -07:00
doublefault.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
early_printk.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
efi_stub.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
efi.c [PATCH] efi: eliminate bad section references 2005-04-16 15:25:53 -07:00
entry.S [PATCH] uml: fix syscall table by including $(SUBARCH)'s one, for i386 2005-05-01 08:58:55 -07:00
head.S [PATCH] variable overflow after hundreds round of hotplug CPU 2005-06-25 16:24:28 -07:00
i386_ksyms.c [PATCH] Remove i386_ksyms.c, almost. 2005-06-23 09:45:11 -07:00
i387.c [PATCH] Remove i386_ksyms.c, almost. 2005-06-23 09:45:11 -07:00
i8259.c [PATCH] kexec: x86: i8259 shutdown: disable interrupts 2005-06-25 16:24:46 -07:00
init_task.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
io_apic.c [PATCH] kexec: x86: resture apic virtual wire mode on shutdown 2005-06-25 16:24:47 -07:00
ioport.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
irq.c [PATCH] cpu state clean after hot remove 2005-06-25 16:24:30 -07:00
kprobes.c [PATCH] kprobes: Temporary disarming of reentrant probe for i386 2005-06-23 09:45:24 -07:00
ldt.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
machine_kexec.c [PATCH] kexec: x86 kexec core 2005-06-25 16:24:49 -07:00
Makefile [PATCH] kexec: x86 kexec core 2005-06-25 16:24:49 -07:00
mca.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
microcode.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
module.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mpparse.c [PATCH] x86: avoid wasting IRQs for PCI devices 2005-06-23 09:45:10 -07:00
msr.c [PATCH] class: convert arch/* to use the new class api instead of class_simple 2005-06-20 15:15:09 -07:00
nmi.c [PATCH] adjust i386 watchdog tick calculation 2005-06-23 09:45:09 -07:00
numaq.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pci-dma.c [PATCH] Remove i386_ksyms.c, almost. 2005-06-23 09:45:11 -07:00
process.c [PATCH] cpu state clean after hot remove 2005-06-25 16:24:30 -07:00
ptrace.c [PATCH] xen: x86: Rename usermode macro 2005-06-23 09:45:14 -07:00
quirks.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
reboot_fixups.c [PATCH] x86 reboot: Add reboot fixup for gx1/cs5530a 2005-05-01 08:58:49 -07:00
reboot.c [PATCH] kexec: x86: factor out apic shutdown code 2005-06-25 16:24:49 -07:00
relocate_kernel.S [PATCH] kexec: x86 kexec core 2005-06-25 16:24:49 -07:00
scx200.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
semaphore.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
setup.c [PATCH] kexec: reserve Bootmem fix for booting nondefault location kernel 2005-06-25 16:24:48 -07:00
sigframe.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
signal.c [PATCH] xen: x86: Use more usermode macro 2005-06-23 09:45:14 -07:00
smp.c [PATCH] sep initializing rework 2005-06-25 16:24:29 -07:00
smpboot.c [PATCH] cpu state clean after hot remove 2005-06-25 16:24:30 -07:00
srat.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
summit.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sys_i386.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
syscall_table.S [PATCH] kexec: x86 kexec core 2005-06-25 16:24:49 -07:00
sysenter.c [PATCH] sep initializing rework 2005-06-25 16:24:29 -07:00
time_hpet.c [PATCH] CPU hotplug: fix hpet sectioning 2005-06-25 16:24:28 -07:00
time.c [PATCH] x86: cpu_khz type fix 2005-06-23 09:45:11 -07:00
trampoline.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
traps.c [PATCH] i386 CPU hotplug 2005-06-25 16:24:29 -07:00
vm86.c [PATCH] misc verify_area cleanups 2005-05-01 08:59:08 -07:00
vmlinux.lds.S [PATCH] kexec: x86: add CONFIG_PYSICAL_START 2005-06-25 16:24:48 -07:00
vsyscall-int80.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vsyscall-note.S [PATCH] i386 vDSO: add PT_NOTE segment 2005-04-16 15:24:48 -07:00
vsyscall-sigreturn.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vsyscall-sysenter.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vsyscall.lds.S [PATCH] i386 vDSO: add PT_NOTE segment 2005-04-16 15:24:48 -07:00
vsyscall.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00