John McDonnell
2013-Apr-29 20:10 UTC
[syslinux] ifcpu[64].c32 functions drop to command line
I'm having issues with the ifcpu[64].c32 modules. I am building a menu system (as opposed to the command line only options I was previously using) to make it easier for my boss to use PXE. I discovered the modules for auto detecting the CPU and thought hey, that's great! However, I'm having an issue where when I select to boot say System Rescue CD, it drops me to the command line instead of booting either option. I'm using syslinux (gpxelinux.0) 5.01 straight from kernel.org on a FreeBSD 9 server. Here's the relevant lines from my current default: PATH /com32 UI vesamenu.c32 LABEL rescuecd MENU LABEL ^System Rescue MENU INDENT 4 MENU PASSWD TEXT HELP * Boots System Rescue 3.4.2 ENDTEXT KERNEL ifcpu.c32 APPEND 64 -- rescuecd64 -- rescuecd32 LABEL rescuecd32 MENU LABEL System Rescue 32-bit MENU INDENT 4 MENU HIDE TEXT HELP * Boots System Rescue 3.4.2 in 32-bit ENDTEXT KERNEL http://****/rescue32 INITRD http://****/initram.igz APPEND rescue32 nomodeset vga=791 scandelay=1 setkmap=us netboot=http://****/sysrcd.dat LABEL rescuecd64 MENU LABEL System Rescue 64-bit MENU INDENT 4 MENU HIDE TEXT HELP * Boots System Rescue 3.4.2 in 64-bit ENDTEXT KERNEL http://****/rescue64 INITRD http://****/initram.igz APPEND nomodeset vga=791 scandelay=1 setkmap=us netboot=http://****/sysrcd.dat In trying to diagnose the problem, I also discovered that pwd.c32 and ls.c32 do not work either. This is what I see when using them: boot: pwd : : boot: ls Unable to read directory: . I think I copied all the .c32/.elf files into my tftproot, here's my com32 directory: # ll com32/ total 1841 -rw-rw-r-- 1 root wheel 1744 Apr 27 02:04 advdump.c32 -rw-rw-r-- 1 root wheel 1604 Apr 27 02:07 cat.c32 -rw-rw-r-- 1 root wheel 22908 Apr 27 01:57 chain.c32 -rw-rw-r-- 1 root wheel 1344 Apr 27 02:07 cmd.c32 -rw-rw-r-- 1 root wheel 1488 Apr 27 02:07 config.c32 -rw-rw-r-- 1 root wheel 1784 Apr 27 02:07 cpuid.c32 -rw-rw-r-- 1 root wheel 2768 Apr 27 02:07 cpuidtest.c32 -rw-rw-r-- 1 root wheel 2004 Apr 27 02:07 disk.c32 -rw-rw-r-- 1 root wheel 1624 Apr 27 02:03 display.c32 -rw-rw-r-- 1 root wheel 12656 Apr 27 02:07 dmitest.c32 -rw-rw-r-- 1 root wheel 3296 Apr 27 02:07 elf.c32 -rw-rw-r-- 1 root wheel 1872 Apr 27 02:04 entrydump.c32 -rw-rw-r-- 1 root wheel 2744 Apr 27 02:07 ethersel.c32 -rw-rw-r-- 1 root wheel 1616 Apr 27 02:04 fancyhello.c32 -rw-rw-r-- 1 root wheel 10975 Apr 27 02:06 fancyhello.lnx -rw-rw-r-- 1 root wheel 10052 Apr 27 01:59 gfxboot.c32 -rw-rw-r-- 1 root wheel 12545 Apr 27 01:59 gfxboot.elf -rw-rw-r-- 1 root wheel 1596 Apr 27 02:07 gpxecmd.c32 -rw-rw-r-- 1 root wheel 1376 Apr 27 02:04 hello.c32 -rw-rw-r-- 1 root wheel 3728 Apr 27 02:07 hexdump.c32 -rw-rw-r-- 1 root wheel 1820 Apr 27 02:07 host.c32 -rw-rw-r-- 1 root wheel 4104 Apr 27 02:07 ifcpu.c32 -rw-rw-r-- 1 root wheel 1752 Apr 27 02:07 ifcpu64.c32 -rw-rw-r-- 1 root wheel 4216 Apr 27 02:07 ifmemdsk.c32 -rw-rw-r-- 1 root wheel 1916 Apr 27 02:07 ifplop.c32 -rw-rw-r-- 1 root wheel 1680 Apr 27 02:07 kbdmap.c32 -rw-rw-r-- 1 root wheel 1896 Apr 27 02:04 keytest.c32 -rw-rw-r-- 1 root wheel 4764 Apr 27 02:07 kontron_wdt.c32 -rw-rw-r-- 1 root wheel 184268 Apr 27 02:01 libcom32.c32 -rw-rw-r-- 1 root wheel 737290 Apr 27 02:01 libcom32.elf -rw-rw-r-- 1 root wheel 66824 Apr 27 02:00 libgpl.c32 -rw-rw-r-- 1 root wheel 237875 Apr 27 02:00 libgpl.elf -rw-rw-r-- 1 root wheel 23904 Mar 21 16:01 libmenu.c32 -rw-rw-r-- 1 root wheel 24812 Apr 27 02:02 libutil.c32 -rw-rw-r-- 1 root wheel 4684 Apr 27 02:07 linux.c32 -rw-rw-r-- 1 root wheel 1248 Apr 27 02:04 localboot.c32 -rw-rw-r-- 1 root wheel 2992 Apr 27 02:07 ls.c32 -rw-rw-r-- 1 root wheel 10048 Apr 27 02:03 mboot.c32 -rw-rw-r-- 1 root wheel 2520 Apr 27 02:07 meminfo.c32 -rw-rw-r-- 1 root wheel 26256 Mar 21 16:11 menu.c32 -rw-rw-r-- 1 root wheel 3464 Apr 27 02:07 pcitest.c32 -rw-rw-r-- 1 root wheel 3036 Apr 27 02:07 pmload.c32 -rw-rw-r-- 1 root wheel 3064 Apr 27 02:07 prdhcp.c32 -rw-rw-r-- 1 root wheel 1500 Apr 27 02:07 pwd.c32 -rw-rw-r-- 1 root wheel 12144 Apr 27 02:07 pxechn.c32 -rw-rw-r-- 1 root wheel 1376 Apr 27 02:07 reboot.c32 -rw-rw-r-- 1 root wheel 1836 Apr 27 02:04 resolv.c32 -rw-rw-r-- 1 root wheel 12916 Apr 27 02:04 rosh.c32 -rw-rw-r-- 1 root wheel 1628 Apr 27 02:07 sanboot.c32 -rw-rw-r-- 1 root wheel 3092 Apr 27 02:07 sdi.c32 -rw-rw-r-- 1 root wheel 1720 Apr 27 02:04 serialinfo.c32 -rw-rw-r-- 1 root wheel 15352 Apr 27 02:05 sysdump.c32 -rw-rw-r-- 1 root wheel 18800 Apr 27 02:05 sysdump.elf -rw-rw-r-- 1 root wheel 2152 Apr 27 02:07 vesainfo.c32 -rw-rw-r-- 1 root wheel 26800 Mar 21 16:11 vesamenu.c32 -rw-rw-r-- 1 root wheel 1864 Apr 27 02:07 vpdtest.c32 -rw-rw-r-- 1 root wheel 2492 Apr 27 02:07 whichsys.c32 -rw-rw-r-- 1 root wheel 3596 Apr 27 02:07 zzjson.c32 NOTE: I figured I should test this on the 4.x branch before submitting this e-mail so I just installed a copy of syslinux 4.06 and the ifcpu.c32 module did work there. However, the ls.c32 and pwd.c32 modules still did not. Did I stumble across something bizarre or do I simply have something wrong in my setup? I have only tried this with PXE and haven't tried CD or USB booting. The PC I'm PXE booting is a HP dc5800 with an Intel Core 2 Duo. Thank you for your time and help. -- John D McDonnell
Mattias Schlenker
2013-Apr-29 20:41 UTC
[syslinux] ifcpu[64].c32 functions drop to command line
Am 29.04.2013 22:10, schrieb John McDonnell:> However, I'm having an issue where when I select to boot say System Rescue CD, it drops me to the command line instead of booting either option. I'm using syslinux (gpxelinux.0) 5.01 straight from kernel.org on a FreeBSD 9 server.I have been running into the same issue recently. 5.10-pre2 might fix it. Could you please test if the bug mentioned still appears in your constellation with this package: https://www.kernel.org/pub/linux/utils/boot/syslinux/Testing/5.10/syslinux-5.10-pre2.tar.xz Regards, Mattias -- Mattias Schlenker - Redaktion + EDV-Beratung + Linux-CD/DVD-Konzepte August-Bebel-Str. 74 - 04275 LEIPZIG - GERMANY Telefon (VoIP "ueberall"), geschaeftlich: +49 341 39290767 Telefon (Festnetz), privat und Fax: +49 341 30393578 Mobil: +49 163 6953657 Mobil (SIM in Testgeraeten): +49 1578 3499550 Bitte fuer geschaeftliche Telefonate vorzugsweise die VoIP-Telefonnummer +49 341 39290767 verwenden, da ich diese aufs Mobiltelefon routen kann!
On Mon, Apr 29, 2013 at 4:10 PM, John McDonnell <mcdonnjd at pcam.org> wrote:> I'm using syslinux (gpxelinux.0) 5.01 straight from kernel.org on a FreeBSD 9 server.> In trying to diagnose the problem, I also discovered that pwd.c32 and ls.c32 do not work either. This is what I see when using them: > > boot: pwd > : : > boot: ls > Unable to read directory: .> NOTE: > I figured I should test this on the 4.x branch before submitting this e-mail so I just installed a copy of syslinux 4.06 and the ifcpu.c32 module did work there. However, the ls.c32 and pwd.c32 modules still did not. Did I stumble across something bizarre or do I simply have something wrong in my setup? I have only tried this with PXE and haven't tried CD or USB booting. The PC I'm PXE booting is a HP dc5800 with an Intel Core 2 Duo.pwd.c32 and ls.c32 are working perfectly. pwd.c32's output (although terse) is correct as it's based on the initial working directory (which is based on DHCP option 209, field sname/option 66 and field file/option 67). ls.c32 will always return nothing useful for PXELINUX. Your closest option is akin to 'more.c32 mydir/?format=text' assuming the httpd will return something useful (the example is just pseudo code in the URL). TFTP and HTTP offer no real mechanism for directories (but most httpds will implement something for you and it's possible to code a tftpd to do the same) -- -Gene
H. Peter Anvin
2013-Apr-29 21:00 UTC
[syslinux] ifcpu[64].c32 functions drop to command line
On 04/29/2013 01:10 PM, John McDonnell wrote:> > In trying to diagnose the problem, I also discovered that pwd.c32 and ls.c32 do not work either. This is what I see when using them: > > boot: pwd > : : > boot: ls > Unable to read directory: . >ls is unsupported over TFTP. For Syslinux 5.10+ it is supported *if* you are using lpxelinux.0 over HTTP or FTP, although it is only known to work with Apache (it is currently known to *not* work with IIS.) -hpa