[syslinux] EFI: HP + syslinux = crash

Oscar Roozen oscar.roozen at brightcomputing.com
Tue Aug 4 11:42:26 PDT 2015



On 04-08-15 17:38, Oscar Roozen wrote:
> Okay, the code in efi/ uses Print() from gnu_efi, but generic code from
> core/ like core/elflink/load_env32.c prints their messages and debugging
> stuff using printf(). These messages end up nowhere. This may explain
> why I never saw anything beyond a certain point, even with debugging
> turned on.

I was busy adding some code to dprintf.h to add a wrapper that converts 
the dprintf calls to a APrint("%a", buf) calls when I got an idea... The 
ILO4 environment provides a virtual COM2 port. I was reluctant to hook 
something to COM1 as I have to order some hardware for that, but this 
also works very well. A pity I didn't think of using it earlier.

Still miss the printf output, though, so error messages from the shared 
code don't reach the user.

I recompiled with this in mk/devel.mk:
  GCCWARN += -DDEBUG_PORT=0x2f8 -DCORE_DEBUG=1

And used ipmi_console to capture the output. Another way is to use the 
vsp command in the ILO4 shell. For future reference.


> Any suggestions while I keep on debugging?

Got some result!

I was using 'vesamenu.c32' to display a menu. Changing this to 
'menu.c32' resulted in a booting system! Okay, the menu is not that 
beautiful, but the system boots very well right now.

Now... why is vesamenu.c32 crashing like it does now? Why is the version 
I tried without Gene's latest patches crashing before even beginning to 
load the first stage: ldlinux.e64?

I'll investigate a bit further tomorrow.


More information about the Syslinux mailing list