android_kernel_xiaomi_sdm845/arch
Mohan Kumar M 54622f10a6 powerpc: Support for relocatable kdump kernel
This adds relocatable kernel support for kdump. With this one can
use the same regular kernel to capture the kdump. A signature (0xfeed1234)
is passed in r6 from panic code to the next kernel through kexec_sequence
and purgatory code. The signature is used to differentiate between
kdump kernel and non-kdump kernels.

The purgatory code compares the signature and sets the __kdump_flag in
head_64.S.  During the boot up, kernel code checks __kdump_flag and if it
is set, the kernel will behave as relocatable kdump kernel. This kernel
will boot at the address where it was loaded by kexec-tools ie. at the
address reserved through crashkernel boot parameter.

CONFIG_CRASH_DUMP depends on CONFIG_RELOCATABLE option to build kdump
kernel as relocatable. So the same kernel can be used as production and
kdump kernel.

This patch incorporates the changes suggested by Paul Mackerras to avoid
GOT use and to avoid two copies of the code.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Mohan Kumar M <mohan@in.ibm.com>
Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2008-10-22 15:01:22 +11:00
..
alpha Merge branch 'genirq-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-20 13:23:01 -07:00
arm misc: replace remaining __FUNCTION__ with __func__ 2008-10-20 16:17:42 -07:00
avr32 Merge branch 'genirq-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-20 13:23:01 -07:00
blackfin container freezer: implement freezer cgroup subsystem 2008-10-20 08:52:34 -07:00
cris cris: use bcd2bin/bin2bcd 2008-10-20 08:52:41 -07:00
frv container freezer: implement freezer cgroup subsystem 2008-10-20 08:52:34 -07:00
h8300 container freezer: implement freezer cgroup subsystem 2008-10-20 08:52:34 -07:00
ia64 PCI: Add ability to mmap legacy_io on some platforms 2008-10-20 11:01:46 -07:00
m32r Merge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-20 13:21:24 -07:00
m68k arch/m68k/bvme6000/rtc.c: remove duplicated include 2008-10-20 08:52:34 -07:00
m68knommu container freezer: implement freezer cgroup subsystem 2008-10-20 08:52:34 -07:00
mips mips: use bcd2bin/bin2bcd 2008-10-20 08:52:41 -07:00
mn10300 mn10300: use bcd2bin/bin2bcd 2008-10-20 08:52:41 -07:00
parisc Merge git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6 2008-10-20 14:40:31 -07:00
powerpc powerpc: Support for relocatable kdump kernel 2008-10-22 15:01:22 +11:00
s390 container freezer: implement freezer cgroup subsystem 2008-10-20 08:52:34 -07:00
sh Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2008-10-20 09:13:34 -07:00
sparc container freezer: implement freezer cgroup subsystem 2008-10-20 08:52:34 -07:00
sparc64 container freezer: implement freezer cgroup subsystem 2008-10-20 08:52:34 -07:00
um uml: fix a compile error 2008-10-20 08:52:34 -07:00
x86 Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2008-10-20 13:40:47 -07:00
xtensa container freezer: implement freezer cgroup subsystem 2008-10-20 08:52:34 -07:00
.gitignore arch: Ignore arch/i386 and arch/x86_64 2008-01-19 21:29:39 -08:00
Kconfig Kconfig: eliminate "def_bool n" constructs 2008-10-16 11:21:31 -07:00