[SLOF] [PATCH v2 00/11] Support network booting with pxelinux.cfg files
Thomas Huth
thuth at redhat.com
Sat May 19 01:45:29 AEST 2018
When booting a Linux kernel via network, it's sometimes more convenient
to load the kernel and initrd separately instead of having to create
a joint kernel + initrd file. The most common "standard" for doing such
network boots are the so-called pxelinux.cfg config files, initially
introduced by the PXELINUX bootloader on x86, but nowadays also used
on ppc64 by petitboot for example. So let's support booting via these
config files in SLOF, too!
v2:
- Added support for UUID-based file names (last two patches)
- Addressed Greg's feedback from v1
Thomas Huth (11):
libnet: Get rid of unused huge_load and block_size parameters
obp-tftp: Make sure to not overwrite paflof in memory
libnet: Pass tftp_retries and ip_version via struct filename_ip
libnet: Put code for determing TFTP error strings into a separate
function
libc: Implement strrchr()
libnet: Add functions for downloading and parsing pxelinux.cfg files
libnet: Wire up pxelinux.cfg network booting
libc: Check for NULL pointers in free()
libnet: Add support for DHCPv4 options 209 and 210
slof: Add a helper function to get the contents of a property in C
code
libnet: Support UUID-based pxelinux.cfg file names
include/helpers.h | 4 +
lib/libc/stdlib/free.c | 4 +-
lib/libc/string/Makefile.inc | 2 +-
lib/libc/string/strrchr.c | 28 ++++++
lib/libnet/Makefile | 2 +-
lib/libnet/dhcp.c | 33 +++++++
lib/libnet/libnet.code | 4 +-
lib/libnet/netapps.h | 3 +-
lib/libnet/netload.c | 196 +++++++++++++++++++++----------------
lib/libnet/ping.c | 14 ++-
lib/libnet/pxelinux.c | 223 +++++++++++++++++++++++++++++++++++++++++++
lib/libnet/pxelinux.h | 33 +++++++
lib/libnet/tftp.c | 120 ++++++++++++++++++++---
lib/libnet/tftp.h | 14 ++-
slof/fs/packages/obp-tftp.fs | 11 ++-
slof/helpers.c | 30 +++++-
16 files changed, 603 insertions(+), 118 deletions(-)
create mode 100644 lib/libc/string/strrchr.c
create mode 100644 lib/libnet/pxelinux.c
create mode 100644 lib/libnet/pxelinux.h
--
1.8.3.1
More information about the SLOF
mailing list