• Jens Rottmann's avatar
    x86 setup: don't recalculate ss:esp unless really necessary · 16252da6
    Jens Rottmann authored
    In order to work around old LILO versions providing an invalid ss
    register, the current setup code always sets up a new stack,
    immediately following .bss and the heap. But this breaks LOADLIN.
    
    This rewrite of the workaround checks for an invalid stack (ss!=ds)
    first, and leaves ss:sp alone otherwise (apart from aligning esp).
    
    [hpa note: LOADLIN has a number of arbitrary hard-coded limits that
    are being pushed up against.  Without some major revision of LOADLIN
    itself it will not be sustainable keeping it alive.  This gives it
    another brief lease on life, however.  This patch also helps the
    cmdline truncation problem with old versions of SYSLINUX.]
    
    Signed-off-by: Jens Rottmann <JRottmann at LiPPERT-AT. de>
    Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
    16252da6
header.S 7.53 KB