]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc: Kexec exit should not use magic numbers
authorMilton Miller <miltonm@bga.com>
Wed, 22 Oct 2008 10:39:18 +0000 (10:39 +0000)
committerPaul Mackerras <paulus@samba.org>
Fri, 31 Oct 2008 05:11:44 +0000 (16:11 +1100)
commit8664759001bd914401e79dd88affd9713c239220
tree609181f519dbf8569808b564a2b15358b79596f5
parent85e747b2f220e595df395c408db95cc290d83a77
powerpc: Kexec exit should not use magic numbers

Commit 504164ea0e91a68da7b7941f4d67f7f206a1408c ("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>
arch/powerpc/include/asm/kdump.h
arch/powerpc/kernel/machine_kexec_64.c
arch/powerpc/kernel/misc_64.S