[syslinux] current state of pxelinux for UEFI...

Frantisek Rysanek Frantisek.Rysanek at post.cz
Fri Nov 8 01:07:02 PST 2019


On 8 Nov 2019 at 0:42, Ady Ady via Syslinux wrote:
>
> As usual, builds/versions should not be mixed, at least within the same 
> platform (bios/ia32/x64).
>
I keep versions strictly separated. Both the build directories under 
/usr/src/syslinux-<VERSION>, and under 
/tftpboot/pxelinux/<VERSION>/efi64/<my data>
and I flip the "filename" and "pathprefix" in dhcpd.conf.

 > Currently, the Syslinux-related binary packages in Debian are:
> 
> _ extlinux
> _ isolinux
> _ pxelinux
> _ syslinux
> _ syslinux-common
> _ syslinux-efi
> _ syslinux-utils
>
okay thanks a lot for explaining that :-)
So for the record at the moment: 
I've tried the syslinux.efi from
  syslinux-efi_6.04~git20190206.bf6db5b4+dfsg1-1_all.deb
and ldlinux.e64 from
  syslinux-common_6.04~git20190206.bf6db5b4+dfsg1-1_all.deb

On my hardware from AsRock (J4105) and Gigabyte (J1900) the following 
recent versions of pxelinux/syslinux:
1) debian 6.04~git20190206.bf6db5b4+dfsg1-1
2) vanilla git master at the moment
3) the sherbszt branch
all behave the same, in the aforementioned way:
they get stuck asking for ldlinux.e64, even though this has been 
provided at least once, on the first request (the path and filename 
was right and TFTP does not report a NAK). They never ask for the 
config file, as specified in the pxelinux.configfile option.

The two motherboards I've tested so far, may have common 
denominators, in that the UEFI codebase is an AMI APTIO 64bit and the 
HW-specific lower layers of the PXE stack consist of a UEFI driver by 
Realtek (some RTL8168/8169 hardware).

For a moment I hesitated "well maybe the syslinux.efi, at the moment 
of waking up on the diskless target, doesn't get the option pointing 
to the config file"? But no, that's not the problem either.

I noticed the explanation in the PXELINUX wiki entry, that 
"In ISC dhcp versions greater than 3.0, site-local option spaces 
start at 224, not 128 (to be compliant with RFC 3942), so you should 
define the PXELINUX options 208-211 as regular DHCP options, rather 
than site local ones." 
Yes indeed, I've been using the "site-local custom option space" all 
along, so I tried applying that configuration change.
Again I'm using 4.3.6 - and the net result in the DHCP protocol is 
exactly the same = either way works for me in dhcpd.conf: 
site-local or regular declaration of the options.
After all, this same dhcpd.conf has been working with PXElinux 3.53 
for many years.

Attached is a screenshot from wireshark (parsing a .pcap taken by 
tcpdump running on the DHCP server) = proving that DHCP does indeed 
push all the pxelinux options as specified in dhcpd.conf.

Actually I've tested by mistake that if I *do not* specify the custom 
pxelinux options at all, syslinux.efi still starts out by asking for 
ldlinux.e64 at the correct path prefix :-)

And yes I now understand that I'm being futile in testing these very 
recent upstream work-in-progress versions of syslinux-efi :-)
Let me do this as a gratuitous snippet of feedback from the wild.

> I don't know for how long we will have to repeat the following: the 
> current official upstream git master head is not worth testing, as it 
> will either FTBFS or the resulting binaries will fail. Testing official 
> upstream 6.04-pre2 or 6.04-pre3 will fail too.
>
> Unless potential regressions are part of the testing goals, there is no 
> point in testing with official upstream 6.03 when 6.04-pre1 (or, even 
> better, the current Debian Testing binary packages) are available.

yes... apologies, I know us newbies, we can be overwhelming...
Following my general intuition that if I play with bleeding edge 
features, I should try bleeding edge code first, before reporting 
bugs :-) But I don't mean to talk back, I'm happy not to be "walking 
in your shoes" on this... 
I love your patience with me :-)
 
Frank

-------------- next part --------------
The following section of this message contains a file attachment
prepared for transmission using the Internet MIME message format.
If you are using Pegasus Mail, or any other MIME-compliant system,
you should be able to save it or view it from within your mailer.
If you cannot, please ask your system administrator for assistance.

   ---- File information -----------
     File:  pxelinux-efi-dhcp.png
     Date:  8 Nov 2019, 9:35
     Size:  70758 bytes.
     Type:  Unknown
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pxelinux-efi-dhcp.png
Type: application/octet-stream
Size: 70758 bytes
Desc: not available
URL: <https://lists.syslinux.org/archives/syslinux/attachments/20191108/025f9233/attachment-0001.obj>


More information about the Syslinux mailing list