[PATCH 2/3] multiboot2: Use rel_min and rel_max for mbi destination

Simon Horman horms at verge.net.au
Mon Sep 13 02:06:57 PDT 2021


On Fri, Sep 10, 2021 at 07:48:59PM -0700, Zhaofeng Li wrote:
> This would segfault if mhi.rel_tag didn't exist.
> 
> Signed-off-by: Zhaofeng Li <hello at zhaofeng.li>

Does the same problem exist a little further up, around line 574, also
in multiboot2_x86_load() ?

                        /* Pick the next aligned spot to load it in. Always page align. */
                        addr = add_buffer(info, buf, mod_size, mod_size, getpagesize(),
                                          mhi.rel_tag->min_addr, mhi.rel_tag->max_addr, 1);

> ---
>  kexec/arch/i386/kexec-mb2-x86.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/kexec/arch/i386/kexec-mb2-x86.c b/kexec/arch/i386/kexec-mb2-x86.c
> index c10c0ef..49fcc2d 100644
> --- a/kexec/arch/i386/kexec-mb2-x86.c
> +++ b/kexec/arch/i386/kexec-mb2-x86.c
> @@ -600,7 +600,7 @@ int multiboot2_x86_load(int argc, char **argv, const char *buf, off_t len,
>  		return -1;
>  
>  	addr = add_buffer(info, mbi_buf, mbi_bytes, mbi_bytes, 4,
> -			  mhi.rel_tag->min_addr, mhi.rel_tag->max_addr, 1);
> +			  rel_min, rel_max, 1);
>  
>  	elf_rel_get_symbol(&info->rhdr, "entry32_regs", &regs, sizeof(regs));
>  	regs.eax = MULTIBOOT2_BOOTLOADER_MAGIC;
> -- 
> 2.32.0
> 
> 
> _______________________________________________
> kexec mailing list
> kexec at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/kexec
> 



More information about the kexec mailing list