linux/arch/powerpc/kernel
Milton Miller 1767c8f392 powerpc: Kexec exit should not use magic numbers
Commit 54622f10a6 ("powerpc: Support for
relocatable kdump kernel") added a magic flag value in a register to
tell purgatory that it should be a panic kernel.  This part is wrong
and is reverted by this commit.

The kernel gets a list of memory blocks and a entry point from user space.
Its job is to copy the blocks into place and then branch to the designated
entry point (after turning "off" the mmu).

The user space tool inserts a trampoline, called purgatory, that runs
before the user supplied code.   Its job is to establish the entry
environment for the new kernel or other application based on the contents
of memory.  The purgatory code is compiled and embedded in the tool,
where it is later patched using the elf symbol table using elf symbols.

Since the tool knows it is creating a purgatory that will run after a
kernel crash, it should just patch purgatory (or the kernel directly)
if something needs to happen.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-10-31 16:11:44 +11:00
..
vdso32 powerpc: Fixup lwsync at runtime 2008-07-03 16:58:10 +10:00
vdso64 powerpc: Fixup lwsync at runtime 2008-07-03 16:58:10 +10:00
.gitignore powerpc: Ignore generated vmlinux.lds in git 2008-10-07 14:26:18 +11:00
align.c powerpc: Fix uninitialised variable in VSX alignment code 2008-09-03 20:53:14 +10:00
asm-offsets.c Merge branch 'kvm-updates/2.6.28' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm 2008-10-16 15:36:00 -07:00
audit.c [PATCH] audit signal recipients 2007-05-11 05:38:25 -04:00
btext.c powerpc: Use the common ascii hex helpers 2008-08-20 16:34:57 +10:00
clock.c [POWERPC] clk.h interface for platforms 2007-10-03 09:11:56 +10:00
compat_audit.c [PATCH] add SIGNAL syscall class (v3) 2007-05-11 05:38:25 -04:00
cpu_setup_6xx.S [POWERPC] ppc32: Fix errata for 603 CPUs 2008-04-21 15:00:32 -05:00
cpu_setup_44x.S powerpc: Remove use of CONFIG_PPC_MERGE 2008-08-04 13:18:17 +10:00
cpu_setup_pa6t.S
cpu_setup_ppc970.S powerpc: Use LOAD_REG_IMMEDIATE only for constants on 64-bit 2008-09-15 11:08:35 -07:00
cputable.c powerpc/40x: Add AMCC PowerPC 405EZ to cputable 2008-10-17 10:31:18 -04:00
crash.c powerpc: Increase CRASH_HANDLER_MAX 2008-06-30 22:31:00 +10:00
crash_dump.c powerpc: Support for relocatable kdump kernel 2008-10-22 15:01:22 +11:00
dma-iommu.c powerpc: Drop archdata numa_node 2008-09-24 16:26:43 -05:00
dma.c powerpc: Fix DMA offset for non-coherent DMA 2008-10-14 10:35:26 +11:00
entry_32.S powerpc: Add TIF_NOTIFY_RESUME support for tracehook 2008-07-28 16:30:50 +10:00
entry_64.S powerpc: Use LOAD_REG_IMMEDIATE only for constants on 64-bit 2008-09-15 11:08:35 -07:00
firmware.c
fpu.S powerpc: Add VSX context save/restore, ptrace and signal support 2008-07-01 11:28:50 +10:00
ftrace.c ftrace: store mcount address in rec->ip 2008-06-23 22:10:56 +02:00
head_8xx.S [POWERPC] 8xx: fix swap 2008-03-07 08:42:28 -06:00
head_32.S powerpc: Fix 32-bit SMP boot on CHRP 2008-10-15 10:13:29 +11:00
head_40x.S [POWERPC] 40x/Book-E: Save/restore volatile exception registers 2008-06-02 14:56:35 -05:00
head_44x.S powerpc: rework 4xx PTE access and TLB miss 2008-07-09 13:36:17 -04:00
head_64.S powerpc: Support for relocatable kdump kernel 2008-10-22 15:01:22 +11:00
head_booke.h powerpc: rework 4xx PTE access and TLB miss 2008-07-09 13:36:17 -04:00
head_fsl_booke.S powerpc: remove non-dependent load fsl_booke PTE_64BIT 2008-10-13 11:09:59 -05:00
ibmebus.c powerpc/ibmebus: Restore "name" sysfs attribute on ibmebus devices 2008-08-20 09:50:21 +10:00
idle.c powerpc: Fix failure to shutdown with CPU hotplug 2008-09-30 13:25:06 +10:00
idle_6xx.S powerpc: Fix for getting CPU number in power_save_ppc32_restore() 2008-09-03 20:53:47 +10:00
idle_e500.S powerpc: Fix for getting CPU number in power_save_ppc32_restore() 2008-09-03 20:53:47 +10:00
idle_power4.S [POWERPC] powermac: Support G5 CPU hotplug 2007-05-07 20:31:13 +10:00
init_task.c [PATCH] take init_files to fs/file.c 2008-05-16 17:22:20 -04:00
io.c ftrace: support for PowerPC 2008-05-23 22:43:11 +02:00
iomap.c [POWERPC] Add 64-bit resources support to pci_iomap 2007-09-20 07:36:52 -05:00
iommu.c powerpc: Support for relocatable kdump kernel 2008-10-22 15:01:22 +11:00
irq.c powerpc: Make the irq reverse mapping radix tree lockless 2008-09-15 11:08:45 -07:00
isa-bridge.c [POWERPC] Remove leftover printk in isa-bridge.c 2008-05-09 20:22:59 +10:00
kgdb.c kgdb, x86, arm, mips, powerpc: ignore user space single stepping 2008-09-26 10:36:41 -05:00
kprobes.c kprobes: improve kretprobe scalability with hashed locking 2008-07-25 10:53:30 -07:00
l2cr_6xx.S Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
legacy_serial.c powerpc/powermac: Fixup default serial port device for pmac_zilog 2008-07-28 16:30:53 +10:00
lparcfg.c powerpc: Replace __FUNCTION__ with __func__ 2008-08-20 16:34:57 +10:00
machine_kexec.c powerpc: Support for relocatable kdump kernel 2008-10-22 15:01:22 +11:00
machine_kexec_32.c kexec jump: rename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE 2008-08-15 08:35:42 -07:00
machine_kexec_64.c powerpc: Kexec exit should not use magic numbers 2008-10-31 16:11:44 +11:00
Makefile powerpc: Merge 32 and 64-bit dma code 2008-09-24 16:26:45 -05:00
misc.S powerpc: Use LOAD_REG_IMMEDIATE only for constants on 64-bit 2008-09-15 11:08:35 -07:00
misc_32.S powerpc: Fix error path in kernel_thread function 2008-10-10 15:55:18 +11:00
misc_64.S powerpc: Kexec exit should not use magic numbers 2008-10-31 16:11:44 +11:00
module.c powerpc: Remove dead module_find_bug code 2008-08-18 14:22:35 +10:00
module_32.c powerpc: Move common module code into its own file 2008-07-01 11:28:05 +10:00
module_64.c Fix compile failure with non modular builds 2008-09-17 09:14:42 -07:00
msi.c [POWERPC] Fix sparse warnings in arch/powerpc/kernel 2008-05-14 22:31:59 +10:00
nvram_64.c [POWERPC] pseries: Eliminate global error_log_cnt variable 2007-08-17 11:01:52 +10:00
of_device.c powerpc: Drop archdata numa_node 2008-09-24 16:26:43 -05:00
of_platform.c powerpc: Add missing reference to coherent_dma_mask 2008-07-08 21:06:35 -07:00
paca.c powerpc: Make the 64-bit kernel as a position-independent executable 2008-09-15 11:08:38 -07:00
pci-common.c powerpc: Further compile fixup for STRICT_MM_TYPECHECKS 2008-10-22 11:00:26 +11:00
pci_32.c powerpc: Fix link errors on 32-bit machines using legacy DMA 2008-10-15 10:13:29 +11:00
pci_64.c powerpc: Merge 32 and 64-bit dma code 2008-09-24 16:26:45 -05:00
pci_dn.c [POWERPC] iSeries: eliminate pci_dn bussubno 2008-01-17 14:57:05 +11:00
pmc.c [POWERPC] Made FSL Book-E PMC support more generic 2008-02-05 23:34:14 -06:00
ppc32.h powerpc: Add VSX context save/restore, ptrace and signal support 2008-07-01 11:28:50 +10:00
ppc_ksyms.c powerpc: Introduce local (non-broadcast) forms of tlb invalidates 2008-09-24 16:29:40 -05:00
proc_ppc64.c powerpc: use non-racy method for proc entries creation 2008-04-29 08:06:22 -07:00
process.c powerpc: Remove use of CONFIG_PPC_MERGE 2008-08-04 13:18:17 +10:00
prom.c powerpc: Make the 64-bit kernel as a position-independent executable 2008-09-15 11:08:38 -07:00
prom_init.c powerpc: Delete unused prom_strtoul and prom_memparse 2008-10-21 15:20:08 +11:00
prom_init_check.sh powerpc: Fix build issue with CONFIG_RELOCATABLE=y 2008-10-21 15:17:49 +11:00
prom_parse.c powerpc: Fix OF parsing of 64 bits PCI addresses 2008-07-22 10:39:34 +10:00
ptrace.c powerpc: Don't use the wrong thread_struct for ptrace get/set VSX regs 2008-07-30 15:26:54 +10:00
ptrace32.c powerpc: Correctly hookup PTRACE_GET/SETVSRREGS for 32 bit processes 2008-07-30 15:26:54 +10:00
reloc_64.S powerpc: Make the 64-bit kernel as a position-independent executable 2008-09-15 11:08:38 -07:00
rtas-proc.c [POWERPC] Fix sparse warnings in arch/powerpc/kernel 2008-05-14 22:31:59 +10:00
rtas-rtc.c
rtas.c powerpc: Zero fill the return values of rtas argument buffer 2008-08-11 10:09:56 +10:00
rtas_flash.c SL*B: drop kmem cache argument from constructor 2008-07-26 12:00:07 -07:00
rtas_pci.c [POWERPC] Fix sparse warnings in arch/powerpc/kernel 2008-05-14 22:31:59 +10:00
setup-common.c powerpc: Move memory size print into common show_cpuinfo for 32-bit 2008-10-22 11:00:25 +11:00
setup.h
setup_32.c powerpc: Reflect the used arguments in machine_init() prototype 2008-10-14 10:35:26 +11:00
setup_64.c powerpc: Make it possible to move the interrupt handlers away from the kernel 2008-09-15 11:08:08 -07:00
signal.c powerpc: Add TIF_NOTIFY_RESUME support for tracehook 2008-07-28 16:30:50 +10:00
signal.h x86, um: get rid of uml signal.h 2008-10-22 22:55:20 -07:00
signal_32.c powerpc: fix giveup_vsx to save registers correctly 2008-07-15 12:29:23 +10:00
signal_64.c powerpc: Remove empty #else from signal_64.c 2008-10-22 11:00:26 +11:00
smp-tbsync.c
smp.c Merge commit 'origin' 2008-10-15 11:31:54 +11:00
softemu8xx.c Remove asm/a.out.h files for all architectures without a.out support. 2008-09-06 19:30:24 +01:00
stacktrace.c powerpc: Removed duplicated include in stacktrace.c 2008-07-28 16:30:47 +10:00
suspend.c PAGE_ALIGN(): correctly handle 64-bit values on 32-bit architectures 2008-07-24 10:47:21 -07:00
swsusp.c powerpc: fixup hard_irq_disable semantics 2007-05-11 08:29:34 -07:00
swsusp_32.S [POWERPC] Make altivec code in swsusp_32.S depend on CONFIG_ALTIVEC 2007-11-08 14:15:34 +11:00
swsusp_64.c [POWERPC] powermac: Suspend to disk on G5 2007-05-07 20:31:14 +10:00
swsusp_asm64.S powerpc: Fix 64-bit hibernation with 64k pages 2008-10-07 14:26:20 +11:00
sys_ppc32.c compat: generic compat get/settimeofday 2008-10-16 11:21:33 -07:00
syscalls.c powerpc/mm: Add Strong Access Ordering support 2008-07-09 16:30:45 +10:00
sysfs.c powerpc: Fix build warnings introduced by PMC support on 32-bit 2008-09-18 17:57:50 -05:00
systbl.S [POWERPC] Align the sys_call_table 2007-10-11 14:36:47 +10:00
systbl_chk.c [POWERPC] Fix a couple of copyright symbols 2008-01-25 22:52:50 +11:00
systbl_chk.sh [POWERPC] Fix a couple of copyright symbols 2008-01-25 22:52:50 +11:00
tau_6xx.c on_each_cpu(): kill unused 'retry' parameter 2008-06-26 11:24:38 +02:00
time.c Merge commit 'origin/master' 2008-07-16 11:07:59 +10:00
traps.c Remove asm/a.out.h files for all architectures without a.out support. 2008-09-06 19:30:24 +01:00
udbg.c [POWERPC] Mark udbg console as CON_ANYTIME, ie. callable early in boot 2008-04-24 21:08:11 +10:00
udbg_16550.c powerpc: Unsigned speed cannot be negative in udbg_16559.c 2008-10-21 15:17:47 +11:00
vdso.c powerpc: Remove use of CONFIG_PPC_MERGE 2008-08-04 13:18:17 +10:00
vecemu.c
vector.S
vio.c powerpc: Drop archdata numa_node 2008-09-24 16:26:43 -05:00
vmlinux.lds.S powerpc: Sync RPA note in zImage with kernel's RPA note 2008-10-10 15:55:19 +11:00