On 2014?03?07? 23:05, Ady wrote:> I understand that these remarks might seem not the main issue, but I > tend to think that once you are successful while using only "default" > > values and in a minimalistic case, you could add complexity > (different paths, multiple firmwares, additional kernels, multiple > cfg files...).Ady, Thanks. I will follow your advice to test more. Gene, You mentioned you have booted several EFI64 systems with x86-64 kernels successfully. Could you please share your config files of dhcp, tftpd, pxelinux, and the tree of your tftpboot dir? Thanks in advance. Steven. -- Steven Shiau <steven _at_ nchc org tw> <steven _at_ stevenshiau org> National Center for High-performance Computing, Taiwan. http://www.nchc.org.tw Public Key Server PGP Key ID: 4096R/47CF935C Fingerprint: 0240 1FEB 695D 7112 62F0 8796 11C1 12DA 47CF 935C
On Fri, Mar 7, 2014 at 10:50 AM, Steven Shiau <steven at nchc.org.tw> wrote:> > On 2014?03?07? 23:05, Ady wrote: >> I understand that these remarks might seem not the main issue, but I >> tend to think that once you are successful while using only "default" >> >> values and in a minimalistic case, you could add complexity >> (different paths, multiple firmwares, additional kernels, multiple >> cfg files...). > Ady, > Thanks. I will follow your advice to test more. > > Gene, > You mentioned you have booted several EFI64 systems with x86-64 kernels > successfully. > Could you please share your config files of dhcp, tftpd, pxelinux, and > the tree of your tftpboot dir? > Thanks in advance.In /etc/vmware/vmnet8/dhcpd/dhcpd.conf I added the following: host 7x { hardware ethernet 00:0C:29:38:6B:6E; filename "e6/bootx64.efi"; next-server 172.21.1.1; # option vendor-encapsulated-options d2:1B:68:74:74:70:3A:2F:2F:31:37:32:2E:32:31:2E:31:2E:31:2F:74:66:74:70:2F:65:36:2F:00:FF; } Currently atftpd (better logging and not interested in 92+MiB files via TFTP when I have HTTP).>From /tftpboot, I have a directory e6/ containing all EFI64 files anda bunch of symlinks within the directory and to the parent (where I keep BIOS stuff, including some kernel/initrds that can do BIOS and EFI64). bootx64.efi is a symlink to syslinux.efi. syslinux.efi is a symlink to slcur/syslinux.efi. slcur is a symlink to a directory containing whatever version I'm testing (say sl603p7/ for 6.03-pre7) since I have about 20 versions prepped for use at the moment, half of which I built for testing various patches. e6/b/ is a symlink to ../b/ and contains tck3810i64.bz (TinyCore 5.0 x86-64 kernel), tc502rt32.gz (TinyCore 5.0.2 root-only 32bit), tc502rt32m64.gz (TinyCore 5.0.2 modules for the x86-64 kernel) and tckscsi64.cgz (A CPIO.GZ containing the SCSI modules for the x86-64 kernel and a file to mark it as loaded on boot). The LABEL stanza I use is: LABEL tc MENU LABEL TC LINUX b/tck3810i64.bz APPEND via-tftp initrd=b/tc502rt32.gz,b/tc502rt32m64.gz,b/tckscsi64.cgz vga=771 SYSAPPEND 2 I have a restart script as follows (which must run as root): #!/bin/bash PID=$(ps ax|grep '^.\{22\}0:00 /usr/bin/vmnet-dhcpd.*vmnet8'|awk '{print$1}') echo "KIlling pid $PID" kill $PID /usr/bin/vmnet-dhcpd -s 6 -cf /etc/vmware/vmnet8/dhcpd/dhcpd.conf -lf /etc/vmware/vmnet8/dhcpd/dhcpd.leases -pf /var/run/vmnet-dhcpd-vmnet8.pid vmnet8 -- -Gene
On 2014?03?08? 05:56, Gene Cumm wrote:> In /etc/vmware/vmnet8/dhcpd/dhcpd.conf I added the following: > > host 7x { > hardware ethernet 00:0C:29:38:6B:6E; > filename "e6/bootx64.efi"; > next-server 172.21.1.1; > # option vendor-encapsulated-options > d2:1B:68:74:74:70:3A:2F:2F:31:37:32:2E:32:31:2E:31:2E:31:2F:74:66:74:70:2F:65:36:2F:00:FF; > } > > Currently atftpd (better logging and not interested in 92+MiB files > via TFTP when I have HTTP). > > From /tftpboot, I have a directory e6/ containing all EFI64 files and > a bunch of symlinks within the directory and to the parent (where I > keep BIOS stuff, including some kernel/initrds that can do BIOS and > EFI64). bootx64.efi is a symlink to syslinux.efi. syslinux.efi is a > symlink to slcur/syslinux.efi. slcur is a symlink to a directory > containing whatever version I'm testing (say sl603p7/ for 6.03-pre7) > since I have about 20 versions prepped for use at the moment, half of > which I built for testing various patches. > > e6/b/ is a symlink to ../b/ and contains tck3810i64.bz (TinyCore 5.0 > x86-64 kernel), tc502rt32.gz (TinyCore 5.0.2 root-only 32bit), > tc502rt32m64.gz (TinyCore 5.0.2 modules for the x86-64 kernel) and > tckscsi64.cgz (A CPIO.GZ containing the SCSI modules for the x86-64 > kernel and a file to mark it as loaded on boot). > > The LABEL stanza I use is: > > LABEL tc > MENU LABEL TC > LINUX b/tck3810i64.bz > APPEND via-tftp > initrd=b/tc502rt32.gz,b/tc502rt32m64.gz,b/tckscsi64.cgz vga=771 > SYSAPPEND 2 > > I have a restart script as follows (which must run as root): > > #!/bin/bash > PID=$(ps ax|grep '^.\{22\}0:00 /usr/bin/vmnet-dhcpd.*vmnet8'|awk '{print$1}') > echo "KIlling pid $PID" > kill $PID > /usr/bin/vmnet-dhcpd -s 6 -cf /etc/vmware/vmnet8/dhcpd/dhcpd.conf -lf > /etc/vmware/vmnet8/dhcpd/dhcpd.leases -pf > /var/run/vmnet-dhcpd-vmnet8.pid vmnet8 > > -- -GeneHi Gene, Thanks. As you mentioned, atftpd has better logging, and my files are smaller than 92 MB, so I switched to atftpd for testing. Now I could find that somehow after bootx64.efi is downloaded by client, the next ldlinux.e64 has never been fetched by client: ===================Mar 8 14:47:45 dhcpd: Client 0:c:29:6e:ac:93 requests 1:2:3:4:5:6:c:d:f:11:12:16:17:1c:28:29:2a:2b:32:33:36:3a:3b:3c:42:43:61:80:81:82:83:84:85:86:87 - PXEClient:Arch:00007:UNDI:003000 - no dhcp-client-id Mar 8 14:47:45 dhcpd: DHCPDISCOVER from 00:0c:29:6e:ac:93 via eth1 Mar 8 14:47:46 dhcpd: DHCPOFFER on 192.168.1.1 to 00:0c:29:6e:ac:93 via eth1 Mar 8 14:47:48 dhcpd: Client 0:c:29:6e:ac:93 requests 1:2:3:4:5:6:c:d:f:11:12:16:17:1c:28:29:2a:2b:32:33:36:3a:3b:3c:42:43:61:80:81:82:83:84:85:86:87 - PXEClient:Arch:00007:UNDI:003000 - no dhcp-client-id Mar 8 14:47:49 dhcpd: DHCPREQUEST for 192.168.1.1 (192.168.1.182) from 00:0c:29:6e:ac:93 via eth1 Mar 8 14:47:49 dhcpd: DHCPACK on 192.168.1.1 to 00:0c:29:6e:ac:93 via eth1 Mar 8 14:47:49 dhcpd: Client 0:c:29:6e:ac:93 requests 1:2:3:4:5:6:c:d:f:11:12:16:17:1c:28:29:2a:2b:32:33:36:3a:3b:3c:42:43:61:80:81:82:83:84:85:86:87 - PXEClient:Arch:00007:UNDI:003000 - no dhcp-client-id Mar 8 14:47:49 atftpd[11886]: Serving bootx64.efi to 192.168.1.1:1066 Mar 8 14:47:49 atftpd[11886]: Serving bootx64.efi to 192.168.1.1:1067 Mar 8 14:47:49 dhcpd: DHCPREQUEST for 192.168.1.1 (192.168.1.182) from 00:0c:29:6e:ac:93 via eth1 Mar 8 14:47:49 dhcpd: DHCPACK on 192.168.1.1 to 00:0c:29:6e:ac:93 via eth1 Mar 8 14:48:04 atftpd[11886]: Serving ldlinux.e64 to 192.168.1.1:1068 Mar 8 14:48:09 atftpd[11886]: timeout: retrying... Mar 8 14:48:14 atftpd[11886]: timeout: retrying... Mar 8 14:48:19 atftpd[11886]: timeout: retrying... Mar 8 14:48:24 atftpd[11886]: timeout: retrying... Mar 8 14:48:29 atftpd[11886]: timeout: retrying... ===================My /etc/default/atftpd is: ===================USE_INETD=false OPTIONS="--tftpd-timeout 300 --retry-timeout 5 --mcast-port 1758 --mcast-addr 239.255.0.0-255 --mcast-ttl 1 --maxthread 100 --verbose=5 --port 69 /tftpboot/nbi_img/" ===================Files are in the correct path: ls -alFh /tftpboot/nbi_img/{*.efi,*e64} -rw-r--r-- 1 root root 179K Mar 7 21:41 /tftpboot/nbi_img/bootx64.efi -rw-r--r-- 1 root root 137K Mar 7 21:41 /tftpboot/nbi_img/ldlinux.e64 and they were extracted from prebuilt binary 6.03-pre7 tarball on kernel.org: sha1sum /tftpboot/nbi_img/{*.efi,*e64} d0ca7d52228231b08c36967262cb796be9e71499 /tftpboot/nbi_img/bootx64.efi 55f17d57e1790071af0cb84e0ac6109a210f06ca /tftpboot/nbi_img/ldlinux.e64 Another thing you I'd like to mentioned is, after bootx64.efi was downloaded, the next download for ldlinux.e64 was about 15 secs later. Is that normal? Thank you very much. Steven. -- Steven Shiau <steven _at_ nchc org tw> <steven _at_ stevenshiau org> National Center for High-performance Computing, Taiwan. http://www.nchc.org.tw Public Key Server PGP Key ID: 4096R/47CF935C Fingerprint: 0240 1FEB 695D 7112 62F0 8796 11C1 12DA 47CF 935C