[PATCH] Retrieve elfcorehdr address from command line
This patch adds support for retrieving the address of elf core header if one is passed in command line. Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
60e64d46a5
commit
2030eae52b
@ -451,6 +451,10 @@ running once the system is up.
|
|||||||
Format: {"as"|"cfq"|"deadline"|"noop"}
|
Format: {"as"|"cfq"|"deadline"|"noop"}
|
||||||
See Documentation/block/as-iosched.txt
|
See Documentation/block/as-iosched.txt
|
||||||
and Documentation/block/deadline-iosched.txt for details.
|
and Documentation/block/deadline-iosched.txt for details.
|
||||||
|
elfcorehdr= [IA-32]
|
||||||
|
Specifies physical address of start of kernel core image
|
||||||
|
elf header.
|
||||||
|
See Documentation/kdump.txt for details.
|
||||||
|
|
||||||
enforcing [SELINUX] Set initial enforcing status.
|
enforcing [SELINUX] Set initial enforcing status.
|
||||||
Format: {"0" | "1"}
|
Format: {"0" | "1"}
|
||||||
|
@ -44,6 +44,7 @@
|
|||||||
#include <linux/edd.h>
|
#include <linux/edd.h>
|
||||||
#include <linux/nodemask.h>
|
#include <linux/nodemask.h>
|
||||||
#include <linux/kexec.h>
|
#include <linux/kexec.h>
|
||||||
|
#include <linux/crash_dump.h>
|
||||||
|
|
||||||
#include <video/edid.h>
|
#include <video/edid.h>
|
||||||
|
|
||||||
@ -881,6 +882,13 @@ static void __init parse_cmdline_early (char ** cmdline_p)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef CONFIG_CRASH_DUMP
|
||||||
|
/* elfcorehdr= specifies the location of elf core header
|
||||||
|
* stored by the crashed kernel.
|
||||||
|
*/
|
||||||
|
else if (!memcmp(from, "elfcorehdr=", 11))
|
||||||
|
elfcorehdr_addr = memparse(from+11, &from);
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* highmem=size forces highmem to be exactly 'size' bytes.
|
* highmem=size forces highmem to be exactly 'size' bytes.
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
#include <linux/device.h>
|
#include <linux/device.h>
|
||||||
#include <linux/proc_fs.h>
|
#include <linux/proc_fs.h>
|
||||||
|
|
||||||
|
extern unsigned long long elfcorehdr_addr;
|
||||||
extern ssize_t copy_oldmem_page(unsigned long, char *, size_t,
|
extern ssize_t copy_oldmem_page(unsigned long, char *, size_t,
|
||||||
unsigned long, int);
|
unsigned long, int);
|
||||||
#endif /* CONFIG_CRASH_DUMP */
|
#endif /* CONFIG_CRASH_DUMP */
|
||||||
|
@ -15,6 +15,9 @@
|
|||||||
#include <asm/io.h>
|
#include <asm/io.h>
|
||||||
#include <asm/uaccess.h>
|
#include <asm/uaccess.h>
|
||||||
|
|
||||||
|
/* Stores the physical address of elf header of crash image. */
|
||||||
|
unsigned long long elfcorehdr_addr;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copy a page from "oldmem". For this page, there is no pte mapped
|
* Copy a page from "oldmem". For this page, there is no pte mapped
|
||||||
* in the current kernel. We stitch up a pte, similar to kmap_atomic.
|
* in the current kernel. We stitch up a pte, similar to kmap_atomic.
|
||||||
|
Loading…
Reference in New Issue
Block a user