Hi Joshua, Joshua Kinard wrote,
On 10/19/2016 23:46, Waldemar Brodkorb wrote:
Hi Joshua, Joshua Kinard wrote,
Have you tried 64K PAGE_SIZE by chance? I use that setting on all of my SGI systems except for the IP27, which has a peculiar Oops crop up under 64K, so that machine boots 16K PAGE_SIZE at the moment. You actually get a nice performance bump on 16K or 64K versus the standard 4K. The testing netboot image I ran on my IP27 w/ 16K showed no ill effects, but I still need to do 64K on the O2 and Octane.
I have not tested 64k, but I hope it will work fine. I will check as soon as I get my O2 netbooting.
It seems I am too stupid to get the machine netbooted. I tried dnsmasq (dhcp,tftp included) and dhcpd/atftpd combination. No success so far. I have running a small Linux on my Solidrun cubox-i as bootserver for my other machines, which normally just works fine.
Could you share your bootserver details and the command you are using to boot a system?
For better experience I just want to boot OpenBSD bsd.rd.IP32 file to see that my bootserver works. Afterwards I want to try my cross-compiled kernel.
I have netbooted so many machines, even old classic unix hardware, (with mopd, rarpd, bootparamd, ...) feeling stupid right now.
Any hints?
My netbooting setup is standard dhcpd with old-school netkit-tftpd (too lazy to set up the more maintained tftp servers). The bit probably hanging you up is a simple /proc tuning directive needed for most SGI systems, so try executing this line on the netboot server:
echo 1 > /proc/sys/net/ipv4/ip_no_pmtu_disc
Yeah, you are right, this is critical. I found out yesterday evening and managed to bootup my self cross-compiled Linux kernel via TFTP. Dnsmasq doesn't work well in this case, dhcpd+atftpd worked fine.
E.g., for my Octane, I typically use: bootp(): console=tty0 root=/dev/md0 consoleblank=0
Why /dev/md0? Is nfsroot not possible?
I try:
printenv
AutoLoad=Yes diskless=0 dbaud=9600 sgilogo=y monitor=h TimeZone=PST8PDT crt_option=1 console=d1 SystemPartition=bootp(): OSLoader=vmlinux netaddr=10.0.0.10 volume=20 OSLoadOptions=ip=dhcp console=ttyS0 root=/dev/nfs ConsoleOut=serial(0) ConsoleIn=serial(0) cpufreq=300 eaddr=08:00:69:0e:a2:22 videostatus=illegal_env_var OSLoadPartition=/dev/nfs OSLoadFilename=vmlinux
bootp():
Setting $netaddr to 10.0.0.10 (from server ) Obtaining from server 3445180 - ... 0.156448] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled [ 0.161755] console [ttyS0] disabled [ 0.182236] serial8250.0: ttyS0 at MMIO 0x1f390000 (irq = 60, base_baud = 115200) is a 16550A [ 4.308574] console [ttyS0] enabled [ 4.372163] serial8250.0: ttyS1 at MMIO 0x1f398000 (irq = 66, base_baud = 115200) is a 16550A [ 4.478209] eth0: SGI MACE Ethernet rev. 1 [ 4.528602] NET: Registered protocol family 17 [ 4.606099] Sending DHCP requests ., OK [ 4.659408] IP-Config: Got DHCP answer from 10.0.0.1, my address is 10.0.0.10 [ 4.746258] IP-Config: Complete: [ 4.785208] device=eth0, hwaddr=08:00:69:0e:a2:22, ipaddr=10.0.0.10, mask=255.255.255.0, gw=10.0.0.1 [ 4.900606] host=10.0.0.10, domain=foo.bar, nis-domain=(none) [ 4.975158] bootserver=0.0.0.0, rootserver=10.0.0.1, rootpath=/nfsroot/sgi nameserver0=10.0.0.1 [ 5.090765] Starting Linux (built with OpenADK). [ 100.166745] VFS: Unable to mount root fs via NFS, trying floppy. [ 100.239877] VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6 [ 100.326955] Please append a correct "root=" boot option; here are the available partitions: [ 100.427692] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0) [ 100.527381] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
Looking into tcpdump output from the bootserver, it looks like no NFS/RPC is even tried.
Any idea?
best regards Waldemar
cat /etc/dhcpd.conf # basic example configuration ddns-update-style none; option domain-name "foo.bar"; option domain-name-servers 10.0.0.1; option routers 10.0.0.1; default-lease-time 600; max-lease-time 7200; authoritative;
subnet 10.0.0.0 netmask 255.255.255.0 { range 10.0.0.15 10.0.0.20; }
host sgi { hardware ethernet 08:00:69:0e:a2:22; fixed-address 10.0.0.10; filename "vmlinux"; server-name "10.0.0.1"; option root-path "10.0.0.1:/nfsroot/sgi"; }
exportfs -av|grep sgi exporting 10.0.0.10:/nfsroot/sgi root@fluor:/nfsroot # ps |grep rpc 398 root 0 SW< [rpciod] 960 root 2144 S /usr/bin/rpcbind 2437 root 2060 S grep rpc root@fluor:/nfsroot # ps |grep mount 1358 root 2520 S /usr/sbin/mountd 2439 root 2060 S grep mount root@fluor:/nfsroot # ps |grep nfs 721 root 0 SW< [nfsiod] 976 root 0 SW [nfsd] 977 root 0 SW [nfsd] 978 root 0 SW [nfsd] 979 root 0 SW [nfsd] 2441 root 2060 S grep nfs root@fluor:/nfsroot #