Subject: Netbooting a SPARCstation 1 from a PC
To: 'port-sparc@netbsd.org' <port-sparc@netbsd.org>
From: Steven Grunza <steven.grunza@dgms.com>
List: port-sparc
Date: 04/30/1999 09:32:47
Sorry for the cross-post but I'm not sure if the problem is with the PC
(server) providing the boot code or the SS1 (client).
The PC (called scrappy) is running NetBSD-1.3.1 and is a AMD K5-100 based
system.
The SPARCstation has 24MB of RAM and a blank 4MB SCSI disk and is using
TTYA for console (attached to the PC).
In the tip window connected to the SS1, I type "boot le(,)miniroot".
Checking /var/log/messages, I eventually see "Apr 30 01:12:40 scrappy
tftpd[1922]: 172.25.0.11: read request for AC19000B.SUN4C: success" so I
know the RARP worked and the Ethernet connection is good. The file is a
symbolic link to boot.net from the NetBSD-1.3.2's sparc installation
directory.
The problem is the occasional "Apr 30 01:12:52 scrappy tftpd[1928]: tftpd:
write: Host is down " messages and the SS1 eventually giving up.
I tossed some debug code into tftpd as follows:
send_data:
errno = 0;
ret_val = send(peer, dp, size + 4, 0);
if (ret_val != size + 4) {
syslog(LOG_ERR, "tftpd: write: %m\n");
syslog(LOG_ERR, "tftpd: send_data failed, size = %d"
", ret_val = %d, errno = %d, peer = %d, dp = %p\n",
size, ret_val, errno, peer, dp);
syslog(LOG_ERR, "tftpd: %s\n", strerror(errno) );
retry = 0;
while( (retry > 0) && (ret_val != size + 4) )
{
syslog(LOG_ERR, "tftpd: retries left %d\n",
retry-- );
ret_val = send(peer, dp, size + 4, 0);
}
}
if (ret_val != size + 4) {
syslog(LOG_ERR, "tftpd: retries exhausted..\n");
goto abort;
}
The result of this debug code is:
Apr 30 01:35:20 scrappy tftpd[2222]: 172.25.0.11: read request for
AC19000B.SUN4C: success
Apr 30 01:35:24 scrappy tftpd[2224]: 172.25.0.11: read request for
AC19000B.SUN4C: success
Apr 30 01:35:28 scrappy tftpd[2226]: 172.25.0.11: read request for
AC19000B.SUN4C: success
Apr 30 01:35:32 scrappy tftpd[2228]: 172.25.0.11: read request for
AC19000B.SUN4C: success
Apr 30 01:35:32 scrappy tftpd[2228]: tftpd: write: Host is down
Apr 30 01:35:32 scrappy tftpd[2228]: tftpd: send_data failed, size = 512,
ret_val = -1, errno = 9, peer = 0, dp = 0x4dec
Apr 30 01:35:32 scrappy tftpd[2228]: tftpd: Bad file descriptor
Apr 30 01:35:32 scrappy tftpd[2228]: tftpd: retries left 4
Apr 30 01:35:32 scrappy tftpd[2228]: tftpd: retries left 3
Apr 30 01:35:32 scrappy tftpd[2228]: tftpd: retries left 2
Apr 30 01:35:32 scrappy tftpd[2228]: tftpd: retries left 1
Apr 30 01:35:32 scrappy tftpd[2228]: tftpd: retries exhausted..
Apr 30 01:35:33 scrappy tftpd[2226]: tftpd: write: Host is down
Apr 30 01:35:33 scrappy tftpd[2226]: tftpd: send_data failed, size = 512,
ret_val = -1, errno = 9, peer = 0, dp = 0x4dec
Apr 30 01:35:33 scrappy tftpd[2226]: tftpd: Bad file descriptor
Apr 30 01:35:33 scrappy tftpd[2226]: tftpd: retries left 4
Apr 30 01:35:33 scrappy tftpd[2226]: tftpd: retries left 3
Apr 30 01:35:33 scrappy tftpd[2226]: tftpd: retries left 2
Apr 30 01:35:33 scrappy tftpd[2226]: tftpd: retries left 1
Apr 30 01:35:33 scrappy tftpd[2226]: tftpd: retries exhausted..
Apr 30 01:35:34 scrappy tftpd[2224]: tftpd: write: Host is down
Apr 30 01:35:34 scrappy tftpd[2224]: tftpd: send_data failed, size = 512,
ret_val = -1, errno = 9, peer = 0, dp = 0x4dec
Apr 30 01:35:34 scrappy tftpd[2224]: tftpd: Bad file descriptor
Apr 30 01:35:34 scrappy tftpd[2224]: tftpd: retries left 4
Apr 30 01:35:34 scrappy tftpd[2224]: tftpd: retries left 3
Apr 30 01:35:34 scrappy tftpd[2224]: tftpd: retries left 2
Apr 30 01:35:34 scrappy tftpd[2224]: tftpd: retries left 1
Apr 30 01:35:34 scrappy tftpd[2224]: tftpd: retries exhausted..
Apr 30 01:35:35 scrappy tftpd[2222]: tftpd: write: Host is down
Apr 30 01:35:35 scrappy tftpd[2222]: tftpd: send_data failed, size = 512,
ret_val = -1, errno = 9, peer = 0, dp = 0x4dec
Apr 30 01:35:35 scrappy tftpd[2222]: tftpd: Bad file descriptor
Apr 30 01:35:35 scrappy tftpd[2222]: tftpd: retries left 4
Apr 30 01:35:35 scrappy tftpd[2222]: tftpd: retries left 3
Apr 30 01:35:35 scrappy tftpd[2222]: tftpd: retries left 2
Apr 30 01:35:35 scrappy tftpd[2222]: tftpd: retries left 1
Apr 30 01:35:35 scrappy tftpd[2222]: tftpd: retries exhausted..
If anyone has any clues, please either post to port-sparc, port-i386, or
send me mail directly. To avoid annoying others, if a reply is specific to
one port or the other, please only reply to that list. Thanks in advance.
Steven G.
=======================================================
Steven Grunza Hardware Engineer
-------------------------------------------------------
mailto:grunza@dgms.com DGM&S
voice: (609) 608 - 2759 1025 Briggs Road
fax: (609) 866 - 8850 Suite 100
flames: /dev/null Mt. Laurel, NJ 08054
-------------------------------------------------------
Unix is user friendly, it's just particular about with whom it makes
friends.