[syslinux] [PATCH] efi: leaving long mode in kernel_jump routine

Gene Cumm gene.cumm at gmail.com
Sun Aug 23 11:09:31 PDT 2015


On Tue, Aug 4, 2015 at 2:55 AM, Thomas Letan via Syslinux
<syslinux at zytor.com> wrote:
> Syslinux 6.03 (efi64) fails to boot a 32-bit kernel. The way Syslinux
> leaves long mode in kernel_jump assembly routine does not follow AMD64
> specifications. More precisely:
> 1. After setting a new GADT, `cs` has to be refresh by doing a long
> jump, but it is not
> 2. Other segments have to be updated, but they are not
> 3. Disabling paging has to be done before disabling long mode, but the
> implementation does the opposite
>
> In most cases, a computer that tries to execute the kernel_jump routine
> reboot (it can also hangs). This patch fixes the kernel_jump routine.
>
> Signed-off-by: Thomas Letan <thomas.letan at ssi.gouv.fr>

Thomas, I noticed you created bug ID 62 (
http://bugzilla.syslinux.org/show_bug.cgi?id=62 ) which appears to be
a duplicate of bug 38 (
http://bugzilla.syslinux.org/show_bug.cgi?id=38 ).

Is there any reason this isn't a duplicate?

-- 
-Gene


More information about the Syslinux mailing list