[RFC] ELF Relocatable x86 and x86_64 bzImages

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On Fri, Aug 04, 2006 at 06:56:11PM -0400, Vivek Goyal wrote:
> 
> Signed-off-by: Vivek Goyal <vgoyal at in.ibm.com>
> ---
> 
>  arch/i386/boot/compressed/head.S |   32 ++++++++++++++++++++++++++++++--
>  1 file changed, 30 insertions(+), 2 deletions(-)
> 
> diff -puN arch/i386/boot/compressed/head.S~debug1-patch arch/i386/boot/compressed/head.S
> --- linux-2.6.18-rc3-1M/arch/i386/boot/compressed/head.S~debug1-patch	2006-08-04 18:03:02.000000000 -0400
> +++ linux-2.6.18-rc3-1M-root/arch/i386/boot/compressed/head.S	2006-08-04 18:18:26.000000000 -0400
> @@ -60,13 +60,32 @@ startup_32:
>  	 * a relocatable kernel this is the delta to our load address otherwise
>  	 * this is the delta to CONFIG_PHYSICAL start.
>  	 */
> +
>  #ifdef CONFIG_RELOCTABLE
              ^^^^^^^^^
Vivek, did you mean CONFIG_RELOCATABLE ?


Thanks
Rachita

> +	/* If loaded by non kexec boot loader, then we will be loaded
> +	 * at 1MB fixed address. But probably the intention is to run
> +	 * from a address for which kernel has been compiled which can
> +	 * be non 1MB.
> +	 */
> +	xorl %eax, %eax
> +	movb 0x210(%esi), %al
> +
> +	/ * check boot loader type. Kexec bootloader id 9, version any */
> +	shrl $4, %eax
> +	subl $0x9, %eax
> +	jnz  1f


[Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Photo]     [Yosemite]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]     [Linux Media]     [Linux Resources]

Powered by Linux