summaryrefslogtreecommitdiff
path: root/kexec/crashdump-elf.c
diff options
context:
space:
mode:
authorIan Campbell <ian.campbell@xensource.com>2007-03-16 10:10:24 +0000
committerSimon Horman <horms@verge.net.au>2007-03-19 13:38:50 +0900
commitcdbc9b011fe43407908632d842e3a39e495e48d9 (patch)
tree99ab9065d606c17bfb838c9155c1a03694f929cc /kexec/crashdump-elf.c
parentefac1da616a211517a4b0eaae098db6ade3bdd26 (diff)
Set crash dump ELF header e_machine field based on underlying hypervisor architecture.
This is necessary when running Xen with a 64 bit hypervisor and 32 bit domain 0 since the CPU crash notes will be 64 bit. Detecting the hypervisor archiecture requires libxenctrl and therefore this support is optional and disabled by default. Signed-off-by: Ian Campbell <ian.campbell@xensource.com> Acked-by: Magnus Damm <magnus@valinux.co.jp> Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'kexec/crashdump-elf.c')
-rw-r--r--kexec/crashdump-elf.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kexec/crashdump-elf.c b/kexec/crashdump-elf.c
index dd89180..ba570eb 100644
--- a/kexec/crashdump-elf.c
+++ b/kexec/crashdump-elf.c
@@ -103,7 +103,7 @@ int FUNC(struct kexec_info *info,
elf->e_ident[EI_OSABI] = ELFOSABI_NONE;
memset(elf->e_ident+EI_PAD, 0, EI_NIDENT-EI_PAD);
elf->e_type = ET_CORE;
- elf->e_machine = elf_info->machine;
+ elf->e_machine = crash_architecture(elf_info);
elf->e_version = EV_CURRENT;
elf->e_entry = 0;
elf->e_phoff = sizeof(EHDR);