[syslinux] [PATCH 2/2] core: Fix stack overflow when reloading config

Celelibi celelibi at gmail.com
Thu Jan 21 18:23:49 PST 2016


2016-01-21 21:51 UTC+01:00, H. Peter Anvin <hpa at zytor.com>:
> On 10/12/15 21:04, celelibi--- via Syslinux wrote:
>> From: Sylvain Gault <sylvain.gault at gmail.com>
>>
>> The behavior when running a "CONFIG" command line is to reload
>> ldlinux.c32 with the new file as argument. This call never return.
>>
>> In order to avoid stacking up the calls to start_ldlinux, this patch
>> introduce a setjmp/longjmp to return to the first call to start_ldlinux,
>> thus freeing all the stack space.
>>
>> Signed-off-by: Sylvain Gault <sylvain.gault at gmail.com>
>
> We don't re*load* ldlinux.c32, I hope?  I assume we just re-execute it?
>
> 	-hpa

Well, ldlinux.c32 is unloaded explicitely in the function
start_ldlinux. It is then actually reloaded by a call to spawn_load.
Network capture just confirmed it.

Do you wish something else to happen?

It is, indeed, a waste of time reloading the very same file again and
again. But I hope it was made this way for simplicity.


Celelibi


More information about the Syslinux mailing list