On 07/09/2014 08:44 AM, Michael Brown wrote:
> 
> It is possible to create a .bss section in the PE/COFF header: iPXE does
> this.  For example:
> 
>   objdump -x bin-x86_64-efi/ipxe.efi
> 
>    Sections:
>    Idx Name   Size      VMA               LMA               File off  Algn
>    0 .text    00081948  0000000000001000  0000000000001000  000002c0  2**4
>               CONTENTS, ALLOC, LOAD, READONLY, CODE
>    1 .rodata  0002bf5e  0000000000082960  0000000000082960  00081c20  2**2
>               CONTENTS, ALLOC, LOAD, DATA
>    2 .data    0001fdf0  00000000000ae8c0  00000000000ae8c0  000adb80  2**4
>               CONTENTS, ALLOC, LOAD, DATA
>    3 .bss     000a27ac  00000000000ce700  00000000000ce700  00000000  2**4
>               ALLOC
>    4 .reloc   00001388  0000000000170ec0  0000000000170ec0  000cd980  2**2
>               CONTENTS, ALLOC, LOAD, READONLY, DATA
>    5 .debug   00000040  0000000000172260  0000000000172260  000ced20  2**0
>               CONTENTS, READONLY, DEBUGGING
> 
> If the bootloader is using the EFI handover protocol (rather than
> calling the PE entry point), how is it (currently) supposed to know how
> much memory to provide beyond the end of the bzImage file?
> 

Since that means you are "bzImage aware" you can look at the fields for
this in the bzImage header: init_size, kernel_alignment,
relocatable_kernel, min_alignment, and pref_address.

(init_size is the important one, obviously, but a misaligned kernel may
require additional space for adjustment.)

        -hpa

--
To unsubscribe from this list: send the line "unsubscribe linux-efi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to