summaryrefslogtreecommitdiff
path: root/kexec/arch/i386
diff options
context:
space:
mode:
authorZhaofeng Li <hello@zhaofeng.li>2021-09-13 20:51:42 -0700
committerSimon Horman <horms@verge.net.au>2021-09-14 13:23:36 +0200
commitdbc151eaddc0ef2dbe1c56939dc36a78aad16abd (patch)
tree818ec36e3687147ac9224560407c7f4430a1b2ae /kexec/arch/i386
parente38819573d3b05fc3a32401988527f29f708de68 (diff)
multiboot2: Accept x86-64 images
Signed-off-by: Zhaofeng Li <hello@zhaofeng.li> Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'kexec/arch/i386')
-rw-r--r--kexec/arch/i386/kexec-mb2-x86.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kexec/arch/i386/kexec-mb2-x86.c b/kexec/arch/i386/kexec-mb2-x86.c
index f3e6b38..36fef20 100644
--- a/kexec/arch/i386/kexec-mb2-x86.c
+++ b/kexec/arch/i386/kexec-mb2-x86.c
@@ -76,8 +76,10 @@ int multiboot2_x86_probe(const char *buf, off_t buf_len)
/* Is it a good idea to try booting this file? */
{
int i, len;
- /* First of all, check that this is an ELF file */
- if ((i=elf_x86_probe(buf, buf_len)) < 0)
+
+ /* First of all, check that this is an ELF file for either x86 or x86-64 */
+ i = elf_x86_any_probe(buf, buf_len, CORE_TYPE_UNDEF);
+ if (i < 0)
return i;
/* Now look for a multiboot header. */