Hi On Fri, Oct 13, 2017 at 12:25 PM, Eduardo Habkost <ehabk...@redhat.com> wrote: > On Thu, Oct 12, 2017 at 04:54:37PM -0700, Anatol Pomozov wrote: >> x86 is not the only architecture supported by multiboot. >> For example GRUB supports MIPS architecture as well. >> >> Signed-off-by: Anatol Pomozov <anatol.pomo...@gmail.com> >> --- >> hw/i386/multiboot.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/hw/i386/multiboot.c b/hw/i386/multiboot.c >> index c9254f313e..7dacd6d827 100644 >> --- a/hw/i386/multiboot.c >> +++ b/hw/i386/multiboot.c >> @@ -173,7 +173,7 @@ int load_multiboot(FWCfgState *fw_cfg, >> } >> >> kernel_size = load_elf(kernel_filename, NULL, NULL, &elf_entry, >> - &elf_low, &elf_high, 0, I386_ELF_MACHINE, >> + &elf_low, &elf_high, 0, EM_NONE, >> 0, 0); > > I assume we still want PC to reject non-x86 ELF files.
Does multiboot spec states this restriction? I've heard that there are attempts to implement multiboot at ARM [1] [2]. Also multiboot2 spec mentions MIPS as one of the target architectures. [1] https://github.com/jncronin/rpi-boot/blob/master/MULTIBOOT-ARM [2] https://wiki.linaro.org/AndrePrzywara/Multiboot > Isn't it > better to add a elf_machine argument to load_multiboot() so each > load_multiboot() caller can specify what's the expected > architecture? > > >> if (kernel_size < 0) { >> fprintf(stderr, "Error while loading elf kernel\n"); >> -- >> 2.15.0.rc0.271.g36b669edcc-goog >> > > -- > Eduardo