[syslinux] gPXE+pxelinux fails with static network config

Ferenc Wagner wferi at niif.hu
Wed Aug 25 13:44:09 PDT 2010


Hi,

As requested on IRC, here are the step-by-step instructions to reproduce
the failure I see:

On http://rom-o-matic.net/gpxe/gpxe-1.0.1/contrib/rom-o-matic/build.php:

output format: .dsk
NIC type: e1000_82540

x CONSOLE_PCBIOS
x CONSOLE_SERIAL
BANNER_TIMEOUT: 20
COMCONSOLE: 0x3F8
_ COMPRESERVE
COMSPEED: 57600
COMDATA: 8
COMPARITY: 0
COMSTOP: 1
x DOWNLOAD_PROTO_TFTP
x DOWNLOAD_PROTO_HTTP
_ DOWNLOAD_PROTO_HTTPS
_ DOWNLOAD_PROTO_FTP
_ SANBOOT_PROTO_ISCSI
_ SANBOOT_PROTO_AOE
x DNS_RESOLVER
x IMAGE_ELF
x IMAGE_NBI
x IMAGE_MULTIBOOT
x IMAGE_PXE
x IMAGE_SCRIPT
x IMAGE_BZIMAGE
x IMAGE_COMBOOT
x AUTOBOOT_CMD
x NVO_CMD
x CONFIG_CMD
x IFMGMT_CMD
_ IWMGMT_CMD
x ROUTE_CMD
x IMAGE_CMD
x DHCP_CMD
_ SANBOOT_CMD
_ LOGIN_CMD
_ TIME_CMD
_ DIGEST_CMD
_ CRYPTO_80211_WEP
_ CRYPTO_80211_WPA
_ CRYPTO_80211_WPA2

DHCP Embedded Script:

#!gpxe
dhcp net0
set 209:string pxelinux.cfg/default
set 210:string http://apt.niif.hu/bko/
echo chaining to pxelinux...
chain ${210:string}pxelinux.0
echo pxelinux download failed!

Static Embedded Script:

#!gpxe
ifopen net0
set net0/ip 10.0.2.15
set net0/netmask 255.255.255.0
set net0/gateway 10.0.2.2
set net0/dns 10.0.2.3
set 209:string pxelinux.cfg/default
set 210:string http://apt.niif.hu/bko/
echo chaining to pxelinux...
chain ${210:string}pxelinux.0
echo pxelinux download failed!


Tests (with QEMU 0.11.0):

$ qemu -fda gpxe-1.0.1-e1000_82540-static.dsk -nographic -net nic,model=e1000 -net user



gPXE 1.0.1 -- Open Source Boot Firmware -- http://etherboot.org
Features: HTTP DNS TFTP bzImage COMBOOT ELF Multiboot NBI PXE PXEXT

chaining to pxelinux...                  
http://apt.niif.hu/bko/pxelinux.0.inject: 0x20000 bytes @ 0x00107000, heap 0 (0x00105cc8)
inject: 0x67430 bytes @ 0x000353d0, heap 1 (0x00105ce8)
cwd = "http://apt.niif.hu/bko/"
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654
free(0x00000000) @ 0x00100654

It hangs here without even trying to download the config file.

$ qemu -fda gpxe-1.0.1-e1000_82540-dhcp.dsk -nographic -net nic,model=e1000 -net user



gPXE 1.0.1 -- Open Source Boot Firmware -- http://etherboot.org
Features: HTTP DNS TFTP bzImage COMBOOT ELF Multiboot NBI PXE PXEXT

DHCP (net0 52:54:00:12:34:56).... ok     
chaining to pxelinux...
http://apt.niif.hu/bko/pxelinux.0.inject: 0x20000 bytes @ 0x00107000, heap 0 (0x00105cc8)
inject: 0x67430 bytes @ 0x000353d0, heap 1 (0x00105ce8)
cwd = "http://apt.niif.hu/bko/"
_malloc(2160, 0, 2) @ 0x00104a1a = 0x00107010
free(0x00107010) @ 0x00100654

PXELINUX 4.03 pre1-4-g7376e6c  Copyright (C) 1994-2010 H. Peter Anvin et al
hello 
No DEFAULT or UI configuration directive found!
boot: 

Here the config file was downloaded without problems.  Syslinux was
compiled from git commit 460675909dd059f5fa84985402fcd6490503c884 with
two local patches affecting the extlinux installer only and
MCONFIG.local containing CFLAGS += -DDEBUG=1.  The binaries and the
config are accessible under http://apt.niif.hu/bko/.

I hope it's enough the reproduce and investigate the problem.
-- 
Thanks,
Feri.




More information about the Syslinux mailing list