From: Mohan Kumar M <mohan@in.ibm.com>
To: kexec@lists.infradead.org
Cc: ppcdev <linuxppc-dev@ozlabs.org>, paulus@samba.org
Subject: [PATCH] Relocatable kdump kernel support in kexec-tools
Date: Tue, 30 Sep 2008 18:26:21 +0530 [thread overview]
Message-ID: <20080930125621.GC1945@in.ibm.com> (raw)
Relocatable kdump kernel support in kexec-tools
This patch adds relocatable kernel support for kdump in the kexec-tools
code. A signature (0xfeed1234) is passed in r6 from panic code to the
purgatory code through kexec_sequence function. The signature is used to
differentiate between relocatable kdump kernel and non-kdump kernels.
The purgatory code compares the signature and sets the __kdump_flag in
head_64.S by using the offset with respect to next kernel load address.
During the boot up, kernel code checks __kdump_flag and if it is set, the
kernel will behave as relocatable kdump kernel.
Signed-off-by: Mohan Kumar M <mohan@in.ibm.com>
---
diff --git a/purgatory/arch/ppc64/v2wrap.S b/purgatory/arch/ppc64/v2wrap.S
index b3563de..f69dad2 100644
--- a/purgatory/arch/ppc64/v2wrap.S
+++ b/purgatory/arch/ppc64/v2wrap.S
@@ -45,6 +45,7 @@
oris rn,rn,name##@h; \
ori rn,rn,name##@l
+#define KDUMP_SIGNATURE 0xfeed1234
.machine ppc64
.globl purgatory_start
@@ -64,6 +65,7 @@ master:
isync
mr 17,3 # save cpu id to r17
mr 15,4 # save physical address in reg15
+ mr 18,6 # save kdump flag in reg18
LOADADDR(6,my_toc)
ld 2,0(6) #setup toc
@@ -94,6 +96,12 @@ master:
mtctr 4 # prepare branch too
mr 3,16 # restore dt address
+ LOADADDR(6,KDUMP_SIGNATURE)
+ cmpd 18,6
+ bne regular
+ li 7,1
+ std 7,24(4) # mark kdump flag at kernel
+regular:
lwz 7,0(4) # get the first instruction that we stole
stw 7,0(0) # and put it in the slave loop at 0
# skip cache flush, do we care?
next reply other threads:[~2008-09-30 12:56 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-30 12:56 Mohan Kumar M [this message]
2008-10-08 6:11 ` [PATCH] Relocatable kdump kernel support in kexec-tools Simon Horman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080930125621.GC1945@in.ibm.com \
--to=mohan@in.ibm.com \
--cc=kexec@lists.infradead.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=paulus@samba.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).