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 #