[syslinux] Syslinux roadmap, revised

H. Peter Anvin hpa at zytor.com
Wed Oct 21 08:20:19 PDT 2009


On 10/22/2009 12:11 AM, Steffen Winterfeldt wrote:
>
> Ok, I have a basic version ready. It uses comboot call 3 (run command) to
> start the kernel for now. But what I really want to do is load kernel &
> initrd in the com module and then use one of the cleanup-shuffle-and-boot
> functions to run the kernel.
>

No, please.  This will really hurt development going forward.  Arranging 
for a callback interface around a higher-level interface would be better 
-- it is the only way to continue to modularize formats.

Having a module aware of all kinds of different image formats really 
would be an utter disaster.

Right now most of these sit in c32 modules, but with the ELF dynamic 
linker we can retain more than one of those trivially.

> Just a few questions:
>
> - I haven't looked everywhere but maybe is there already code that does
> that
> (setup & boot a loaded kernel & initrd)?
>

There is -- syslinux_boot_linux().

> - syslinux puts (ISTR) the initrd at the end of memory; is that really
> necessary?

Yes.

> - Does malloc() access _all_ memory or just the first or the biggest block
> (from the e820 map)?

All.

>>> module (with the current api) is not a problem. It will need a big
>>> enough
>>> low mem bounce buffer, though.
>>
>> How big?
>
> Depends a bit on the gfxboot core code size. I'm using slightly less
> than 60k at the moment, so the provided 64k are ok for now.

What does the code in the bounce buffer do?  The problem remains if it 
needs to do filesystem calls.

	-hpa




More information about the Syslinux mailing list