[syslinux] Hyper-V Gen 2 waiting for ldlinux.e64

Geert Stappers stappers at stappers.nl
Wed Oct 7 16:24:26 PDT 2015


On Wed, Oct 07, 2015 at 05:58:51PM -0500, Clements, James wrote:
> James Clement
> > Geert Stappers
> > > On Wed, Oct 07, 2015 at 05:06:41PM -0500, Clements, James wrote:
> > > > The screen displays the following:
> > > >
> > > > PXE Network Boot using IPv4
> > > > ....
> > > >    Station IP address is 192.168.205.50
> > > >    Server IP address is 192.168.205.1
> > > >    NBP filename is efi64/syslinux.efi
> > > >    NBP filesize is 200096 Bytes
> > > >    Downloading NBP file...
> > > >    Successfully downloaded NBP file.
> > > > Getting cached packet
> > > > My IP is 192.168.205.50
> > > >
> > >
> > > So nothing with "disable UseDefaultAddress"
> > > No signs of any repeating / any loops  on the console of the booting VM.
> > >
> > > IIRC can http://www.syslinux.org/wiki/index.php/Development/Debugging#Syslinux_Dynamic_Debugger
> > > only be used after ldlinux being loaded ...
> > >
> >
> > Nope, nothing like that. I'm not really sure how to proceed, but I notice on
> > your IRC channel that you advertise a 'devel 6.04-preN' verion. Is it worth me
> > trying that?

The binaries that Gene asked the to test in the begin of this thread
are the newest. That are fresher as 6.04-preN.

> Correct me if I am wrong but if I understand correctly, syslinux.efi is
> what drives the request for ldlinux.e64. Is there a way we can enable
> some debug somehow to see why the request for ldlinux.e64 includes
> the tsize option? Or even disable the tsize option (as it appears it
> may be causing the UEFI to hang)?
> 
--- a/efi/main.c
+++ b/efi/main.c
@@ -1371,7 +1371,9 @@ EFI_STATUS efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *table)
         */
        efi_setcwd(DevicePathToStr(info->FilePath));
 
+       Print(L"fs_init start\n");
        fs_init(ops, (void *)&priv);
+       Print(L"fs_init done.\n");
 
        /*
         * There may be pending user input that wasn't processed by
@@ -1383,8 +1385,10 @@ EFI_STATUS efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *table)
                status = uefi_call_wrapper(in->ReadKeyStroke, 2, in, &key);
        } while (status == EFI_SUCCESS);
 
+       Print(L"load_env32 start\n");
        if (!setjmp(load_error_buf))
                load_env32(NULL);
+       Print(L"load_env32 done.\n");
 
        /* load_env32() failed.. cancel timer and bailout */
        status = cancel_timer(timer_ev);


Untested


More information about the Syslinux mailing list