Subject: Re: First failed boot attempts
To: Darrin B. Jewell <jewell@mit.edu>
From: Michael Jinks <mjinks@bsd.uchicago.edu>
List: port-next68k
Date: 07/31/1999 19:55:41
Thanks for the reply, Darrin.  By following it through and finding out
the answers to your questions, I found a couple of things I'd been doing
wrong.  For one thing, I hadn't realized that /usr/mdec/boot was a boot
loader and not the kernel.  That led to the realization that I hadn't
installed the kernel in the first place.  Oops.

Kernel installed as netbsd-GENERIC and symlinked to the name netbsd, I
get the real kernel pumping over to the NeXT, but now I get a different
error.  Manual transcript of NeXT console follows.  Note that
"/usr/netboot/NetBSD.m68k" is /usr/mdec/boot renamed to avoid confusion
with other files in that directory.

NeXT> ben()netbsd
boot en(0,0,0)netbsd
Requesting BOOTP information. [OK]
Booting /usr/netboot/NetBSD.m68k from gaea
..........................................
>>NetBSD BOOT [$Revision: 1.2 $ #1]
net_open: netif_open() succeeded
net_open: NFS mount succeeded
920440enintr: timed out.  <== It sits at this line for a long time
drawing the |/-\ whirly-thing in the column immediately after the
numbers, then pauses, prints the "enintr: timed out" message, and:

net_close: calling netif_close()
load of en()netbsd: Input/output error
boot:


A few notes about our setup.

On the NeXT side, although we do have one Turbo and one color, we
haven't even tried to boot those, and the rest are all vanilla 68040's.

The machine serving as tftp and bootp server is a RedHat Linux box,
kernel version 2.2.5-intel.

Here are its config lines for tftp and bootp, from /etc/inetd.conf:

tftp    dgram   udp     wait    root    /usr/sbin/tcpd 
/usr/sbin/in.tftpd /usr/netboot
bootps  dgram   udp     wait    root    /usr/sbin/tcpd  /usr/sbin/bootpd
-d 9

The relevant section of /etc/bootptab:

next102.localdomain:\
        :ht=ether:\
        :ha=00000f00f249:\
        :sm=255.255.255.0:\
        :ip=192.168.3.102:\
        :hn:\
        :bf=/usr/netboot/NetBSD.m68k:\
        :rp=/usr/rboot/NetBSD_next68/next102:\
        :vm=auto:

A line from /etc/exports:

/usr/rboot/NetBSD_next68/next102 *(rw,insecure,no_root_squash)


The output of the server's /var/log/messages during a boot attempt:

Jul 31 19:21:06 gaea bootpd.daemon[1219]: version 2.4.3
Jul 31 19:21:06 gaea bootpd.daemon[1219]: bootptab mtime: Sat Jul 31
17:58:28 1999
Jul 31 19:21:06 gaea bootpd.daemon[1219]: reading "/etc/bootptab"
Jul 31 19:21:06 gaea bootpd.daemon[1219]: read 6 entries (6 hosts) from
"/etc/bootptab"
Jul 31 19:21:06 gaea bootpd.daemon[1219]: recvd pkt from IP addr 0.0.0.0
Jul 31 19:21:06 gaea bootpd.daemon[1219]: bootptab mtime: Sat Jul 31
17:58:28 1999
Jul 31 19:21:06 gaea bootpd.daemon[1219]: request from Ethernet address
00:00:0F:00:F2:4
Jul 31 19:21:06 gaea bootpd.daemon[1219]: found 192.168.3.102
(next102.localdomain)
Jul 31 19:21:06 gaea bootpd.daemon[1219]: requested path=""  file="boot"
Jul 31 19:21:06 gaea bootpd.daemon[1219]:
bootfile="/usr/netboot/NetBSD.m68k"
Jul 31 19:21:06 gaea bootpd.daemon[1219]: vendor magic field is
78.101.88.84
Jul 31 19:21:06 gaea bootpd.daemon[1219]: sending reply (with no
options)
Jul 31 19:21:06 gaea bootpd.daemon[1219]: setarp 192.168.3.102 -
00:00:0F:00:F2:49
Jul 31 19:21:07 gaea tftpd[1221]: tftpd: trying to get file:
/usr/netboot/NetBSD.m68k 
Jul 31 19:21:07 gaea bootpd.daemon[1219]: recvd pkt from IP addr 0.0.0.0
Jul 31 19:21:07 gaea bootpd.daemon[1219]: bootptab mtime: Sat Jul 31
17:58:28 1999
Jul 31 19:21:07 gaea bootpd.daemon[1219]: request from Ethernet address
00:00:0F:00:F2:4
Jul 31 19:21:07 gaea bootpd.daemon[1219]: found 192.168.3.102
(next102.localdomain)
Jul 31 19:21:07 gaea bootpd.daemon[1219]:
bootfile="/usr/netboot/NetBSD.m68k"
Jul 31 19:21:07 gaea bootpd.daemon[1219]: vendor magic field is
99.130.83.99
Jul 31 19:21:07 gaea bootpd.daemon[1219]: request message length=548
Jul 31 19:21:07 gaea bootpd.daemon[1219]: extended reply, length=548,
options=312
Jul 31 19:21:07 gaea bootpd.daemon[1219]: Received: DHCPDISCOVER
Jul 31 19:21:07 gaea bootpd.daemon[1219]: Sent: DHCPOFFER
Jul 31 19:21:07 gaea bootpd.daemon[1219]: sending reply (with RFC1048
options)
Jul 31 19:21:07 gaea bootpd.daemon[1219]: setarp 192.168.3.102 -
00:00:0F:00:F2:49
Jul 31 19:21:07 gaea bootpd.daemon[1219]: recvd pkt from IP addr 0.0.0.0
Jul 31 19:21:07 gaea bootpd.daemon[1219]: bootptab mtime: Sat Jul 31
17:58:28 1999
Jul 31 19:21:07 gaea bootpd.daemon[1219]: request from Ethernet address
00:00:0F:00:F2:4
Jul 31 19:21:07 gaea bootpd.daemon[1219]: found 192.168.3.102
(next102.localdomain)
Jul 31 19:21:07 gaea bootpd.daemon[1219]:
bootfile="/usr/netboot/NetBSD.m68k"
Jul 31 19:21:07 gaea bootpd.daemon[1219]: vendor magic field is
99.130.83.99
Jul 31 19:21:07 gaea bootpd.daemon[1219]: request message length=548
Jul 31 19:21:07 gaea bootpd.daemon[1219]: extended reply, length=548,
options=312
Jul 31 19:21:07 gaea bootpd.daemon[1219]: Received: DHCPREQUEST
Jul 31 19:21:07 gaea bootpd.daemon[1219]: Sent: DHCPACK
Jul 31 19:21:07 gaea bootpd.daemon[1219]: sending reply (with RFC1048
options)
Jul 31 19:21:07 gaea bootpd.daemon[1219]: setarp 192.168.3.102 -
00:00:0F:00:F2:49
Jul 31 19:21:07 gaea mountd[457]: authenticated mount request from
next102:1023 


And, finally, the output of tcpdump of an identical attempt:

19:24:25.462766 0.0.0.0.bootpc > 255.255.255.255.bootps: xid:0xde8
[|bootp]
19:24:25.464157 gaea.bootps > next102.bootpc: xid:0xde8 Y:next102 S:gaea
[|bootp
19:24:25.560165 next102.1659 > gaea.tftp: 33 RRQ
"/usr/netboot/NetBSD.m68k" [|tftp]
19:24:25.588923 gaea.1026 > next102.1659: udp 516
19:24:25.591885 next102.1659 > gaea.1026: udp 4
19:24:25.592020 gaea.1026 > next102.1659: udp 516
19:24:25.594752 next102.1659 > gaea.1026: udp 4
.
.
[lots of similar udp lines... bootloader loading?]
.
.
19:24:25.738866 next102.1659 > gaea.1026: udp 4
19:24:25.738961 gaea.1026 > next102.1659: udp 300
19:24:25.741005 next102.1659 > gaea.1026: udp 4
19:24:26.326682 0.0.0.0.bootpc > 255.255.255.255.bootps: [|bootp]
19:24:26.328388 gaea.bootps > next102.bootpc: Y:next102 S:gaea [|bootp]
19:24:26.334747 0.0.0.0.bootpc > 255.255.255.255.bootps: [|bootp]
19:24:26.336710 gaea.bootps > next102.bootpc: Y:next102 S:gaea [|bootp]
19:24:26.342391 arp who-has gaea tell next102
19:24:26.342794 arp reply gaea is-at 0:10:4b:62:89:48
19:24:26.343558 next102.1023 > gaea.sunrpc: udp 76
19:24:26.344437 gaea.sunrpc > next102.1023: udp 28
19:24:26.346460 next102.1023 > gaea.633: udp 96
19:24:26.348530 gaea.633 > next102.1023: udp 60
19:24:26.603798 next102.1023 > gaea.sunrpc: udp 76
19:24:26.604518 gaea.sunrpc > next102.1023: udp 28
19:24:26.606576 next102.4 > gaea.nfs: 104 lookup [|nfs]
19:24:26.606745 gaea.nfs > next102.4: reply ok 128 lookup [|nfs]
19:24:26.609398 next102.5 > gaea.nfs: 92 readlink [|nfs]
19:24:26.609504 gaea.nfs > next102.5: reply ok 48 readlink [|nfs]
19:24:26.612385 next102.6 > gaea.nfs: 112 lookup [|nfs]
19:24:26.612474 gaea.nfs > next102.6: reply ok 128 lookup [|nfs]
19:24:26.621392 next102.7 > gaea.nfs: 104 read [|nfs]
19:24:26.623641 gaea.nfs > next102.7: reply ok 132 read [|nfs]
.
.
[lots of similar lines... kernel loading?]
.
.
19:24:37.335032 gaea.nfs > next102.770: reply ok 1124 read [|nfs]
19:24:37.348701 next102.771 > gaea.nfs: 104 read [|nfs]
19:24:37.348894 arp who-has next102 tell gaea
19:24:37.349564 arp reply next102 is-at 0:0:f:0:f2:49
19:24:37.349591 gaea.nfs > next102.771: reply ok 1124 read [|nfs]

...and that's it.  It just falls off, no inconsistencies that I can spot
other than the two arp lines.