[syslinux] SYSLINUX 6.03-pre18 crashes on Mellanox/Intel card with iPXE stack

Gene Cumm gene.cumm at gmail.com
Sun Jun 29 08:08:17 PDT 2014


On Jun 29, 2014 9:37 AM, "Wissam Shoukair" <wissams at mellanox.com> wrote:
>
> Hi Peter,
>
> I approached you before on this issue that I’m having with the SYSLINUX
6.03-pre18 when booting with iPXE option ROM.
>
> The issue was reproduced on different OEMs, and also on 2 different cards
(Mellanox and Intel), with latest and 2 years old iPXE code.
>
> Just to be clear, if we use SYSLINUX 4.07 on the same setup, the issue
doesn’t reproduce.
>
>
>
> The problem is when the SYSLINUX goes into real mode and tries to call
the iPXE API function.
>
> SYSLINUX 6.03-pre18 loads up, and before calling pxe_entry
(arch/i386/interface/pxe/pxe_entry.S) from iPXE code, it fails to move to
real mode in core_syscall:core/callback.inc (when running ‘jmp enter_rm’
assembly command)
>
>
>
> In all cases, when iPXE gives the control to SYSLINUX, the memory and
registers values are correct. We validated the values in the !PXE structure
which iPXE gives to SYSLINUX.
>
>
>
> These are the values of the registers prior executing the SYSLINUX:
>
> EAX=00000000 EBX=00000AA0 ECX=000A9300 EDX=00093AA0
>
> ESI=422E2B30 EDI=00000A40 EBP=00000007 ESP=00002D12 EIP=0000030E
>
> CS=9300 DS=93AE ES=9300 FS=93AE GS=93AE SS=93AE C=0 Z=0 D=0 I=1 S=0
>
>
>
> 9300:030E  CALL FAR 0000:7C00
>
> 9300:0313  ADD SP,0004
>
> 9300:0316  RET
>
> 9300:0317  PUSHF
>
> 9300:0318  PUSH CS
>
> 9300:0319  PUSH  031F
>
> 9300:031C  PUSH EAX
>
> 9300:031E  RETF
>
> 9300:031F  RET
>
> 9300:0320  CALL FAR WORD PTR SS:[139C]
>
> 9300:0325  RET
>
> 9300:0326  PUSHAD
>
> 9300:0328  PUSH DS
>
> 9300:0329  PUSH ES
>
> 9300:032A  PUSH FS

Thanks for the details. I wonder if this might be related to some troubles
I've had recently with gpxelinux.0 where my VM on VMware Workstation has a
CPU fault in a similar version range, starting around 5.02/5.10-pre2.

Testing with iPXE ISO it works flawlessly. Sounds like my next test should
be an ipxelinux.0.

--Gene


More information about the Syslinux mailing list