On Wed, Oct 07, 2020 at 03:53:47PM -0400, Arvind Sankar wrote:
> Save the boot_params pointer passed in by the bootloader in
> startup_32/64. This avoids having to initialize it in two different
> places in C code, and having to preserve SI through the early assembly
> code.
> 
> Signed-off-by: Arvind Sankar <nived...@alum.mit.edu>

Nice cleanup!

>  /*
>   * Jump to the extracted kernel.
>   */
> -     xorl    %ebx, %ebx
> +     movl    boot_params@GOTOFF(%ebx), %esi
>       jmp     *%eax
>  SYM_FUNC_END(.Lrelocated)
>  
> @@ -209,6 +208,8 @@ SYM_DATA_START_LOCAL(gdt)
>       .quad   0x00cf92000000ffff      /* __KERNEL_DS */
>  SYM_DATA_END_LABEL(gdt, SYM_L_LOCAL, gdt_end)
>  
> +SYM_DATA(boot_params, .long 0)
> +

You should add a comment here that boot_params needs to be in the .data
section because in .bss it would get zeroed out again later. Same
applies to the 64bit version of this.

With that changed:

Reviewed-by: Joerg Roedel <jroe...@suse.de>

Reply via email to