[syslinux] load_env32 WAS: Hyper-V Gen 2 waiting for ldlinux.e64
Geert Stappers
stappers at stappers.nl
Fri Oct 9 07:28:58 PDT 2015
On Thu, Oct 08, 2015 at 01:24:26AM +0200, Geert Stappers via Syslinux wrote:
> On Wed, Oct 07, 2015 at 05:58:51PM -0500, Clements, James wrote:
>
> > 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
(James did)
It dies in load_env32.
$ git grep load_env
core/diskstart.inc: pm_call load_env32
core/elflink/load_env32.c:void load_env32(com32sys_t * regs __unused)
core/extern.inc: ; elflink/load_env32.c
core/extern.inc: extern load_env32, pm_env32_run
core/include/core.h:extern void load_env32(com32sys_t *regs);
core/isolinux.asm: pm_call load_env32
core/isolinux.asm: jmp kaboom ; load_env32() should never return. If
core/pxelinux.asm: pm_call load_env32
core/pxelinux.asm: jmp kaboom ; load_env32() shouldn't return. If it does, then kaboom!
efi/main.c: Print(L"load_env32 start\n");
efi/main.c: load_env32(NULL);
efi/main.c: Print(L"load_env32 done.\n");
efi/main.c: /* load_env32() failed.. cancel timer and bailout */
In which source file should the next debug print statement go?
Groeten
Geert Stappers
--
Leven en laten leven
More information about the Syslinux
mailing list