From ceb04ae1223ba5cdd40df744aa73a32b2cc7d879 Mon Sep 17 00:00:00 2001 From: Huang Ying Date: Wed, 29 Oct 2008 11:24:25 +0800 Subject: kexec jump support for kexec-tools To support memory backup/restore an option named --load-preserve-context is added to kexec. When it is specified toggether with --mem-max, most segments for crash dump support are loaded, and the memory range between mem_min to mem_max which has no segments loaded are loaded as backup segments. To support jump back from kexeced, options named --load-jump-back-helper and --entry are added to load a helper image with specified entry to jump back. Signed-off-by: Huang Ying Signed-off-by: Simon Horman --- kexec/arch/i386/kexec-elf-x86.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'kexec/arch/i386/kexec-elf-x86.c') diff --git a/kexec/arch/i386/kexec-elf-x86.c b/kexec/arch/i386/kexec-elf-x86.c index ddd4a10..5a763bd 100644 --- a/kexec/arch/i386/kexec-elf-x86.c +++ b/kexec/arch/i386/kexec-elf-x86.c @@ -170,7 +170,7 @@ int elf_x86_load(int argc, char **argv, const char *buf, off_t len, /* Need to append some command line parameters internally in case of * taking crash dumps. */ - if (info->kexec_flags & KEXEC_ON_CRASH) { + if (info->kexec_flags & (KEXEC_ON_CRASH|KEXEC_PRESERVE_CONTEXT)) { modified_cmdline = xmalloc(COMMAND_LINE_SIZE); memset((void *)modified_cmdline, 0, COMMAND_LINE_SIZE); if (command_line) { @@ -257,7 +257,7 @@ int elf_x86_load(int argc, char **argv, const char *buf, off_t len, /* If panic kernel is being loaded, additional segments need * to be created. */ - if (info->kexec_flags & KEXEC_ON_CRASH) { + if (info->kexec_flags & (KEXEC_ON_CRASH|KEXEC_PRESERVE_CONTEXT)) { rc = load_crashdump_segments(info, modified_cmdline, max_addr, 0); if (rc < 0) -- cgit