[syslinux] Unable to boot Linux kernel in from Syslinux 6.00-pre efi64

Geert Stappers stappers at stappers.nl
Mon Jan 7 14:01:05 PST 2013


On Sun, Dec 09, 2012 at 02:51:05PM +0100, Geert Stappers wrote:
> On Sun, Dec 09, 2012 at 06:34:15PM +0530, Keshav P R wrote:
> > Hi,
> >      Line 762 of efi/main.c (git firmware branch) should be changed to
> > 
> > if (hdr->version < 0x20b) {
> 
> diff --git a/efi/main.c b/efi/main.c
> index 754cbc5..df432d7 100644
> --- a/efi/main.c
> +++ b/efi/main.c
> @@ -758,9 +758,9 @@ int efi_boot_linux(void *kernel_buf, size_t kernel_size,
>         if (hdr->version < 0x20a || !hdr->relocatable_kernel) {
>                 printf("bzImage version 0x%x unsupported\n", hdr->version);
>                 goto bail;
>         }
> -       if (hdr->version >= 0x20b) {
> +       if (hdr->version < 0x20b) {
>                 printf("bzImage version 0x%x handover protocol unimplemented \n", hdr->version);
>                 goto bail;
>         }
> 
> 
> > 
> > Without this change syslinux efi64 gives out "handover protocol
> > unimplemented error" and fails to boot. With this change syslinux boots the
> > kernels fine (tested with 3.6.9 and 3.7rc6 kernels). Please fix this.
> > Thanks in advance.
> > 
> > Regards.
> > 
> > Keshav
> 

Now there is http://www.syslinux.org/commit/c5f62920d2a8ffba0e9c3282403a8676c6073de5


Hope this helps

St



More information about the Syslinux mailing list