Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Mar 1998 05:21:05 +0100
From:      Tor Egge <Tor.Egge@idi.ntnu.no>
To:        ambrisko@whistle.com
Cc:        freebsd-current@FreeBSD.ORG
Subject:   Re: Netboot problem: RPC timeout for server 0x0
Message-ID:  <199803130421.FAA16144@pat.idi.ntnu.no>
In-Reply-To: Your message of "Thu, 12 Mar 1998 17:21:13 -0800 (PST)"
References:  <199803130121.RAA02278@crab.whistle.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> If go back in time just before this then it is fine, just after then
> it breaks.  The time is 2/20/98 8:40:00 then it breaks, 8:30 is fine.

This is actually a very good indication of what's going wrong.

Try this patch.

Index: sys/nfs/bootp_subr.c
===================================================================
RCS file: /home/ncvs/src/sys/nfs/bootp_subr.c,v
retrieving revision 1.9
diff -u -r1.9 bootp_subr.c
--- bootp_subr.c	1998/02/09 06:10:32	1.9
+++ bootp_subr.c	1998/03/13 04:17:52
@@ -766,10 +766,10 @@
     return;
 
   /*
-   * Bump time if 0.
+   * Wait until arp entries can be handled.
    */
-  if (!time.tv_sec)
-    time.tv_sec++;
+  while (time.tv_sec == 0)
+	tsleep(&time, PZERO+8, "arpkludge", 10);
 
   /*
    * Find a network interface.
Index: sys/nfs/nfs_vfsops.c
===================================================================
RCS file: /home/ncvs/src/sys/nfs/nfs_vfsops.c,v
retrieving revision 1.55
diff -u -r1.55 nfs_vfsops.c
--- nfs_vfsops.c	1998/03/01 22:46:30	1.55
+++ nfs_vfsops.c	1998/03/13 04:20:09
@@ -399,8 +399,8 @@
 	 * XXX time must be non-zero when we init the interface or else
 	 * the arp code will wedge...
 	 */
-	if (time.tv_sec == 0)
-		time.tv_sec = 1;
+	while (time.tv_sec == 0)
+		tsleep(&time, PZERO+8, "arpkludge", 10);
 
 	if (nfs_diskless_valid==1) 
 	  nfs_convert_diskless();
Index: sys/nfs/krpc_subr.c
===================================================================
RCS file: /home/ncvs/src/sys/nfs/krpc_subr.c,v
retrieving revision 1.7
diff -u -r1.7 krpc_subr.c
--- krpc_subr.c	1997/10/28 15:59:03	1.7
+++ krpc_subr.c	1998/03/13 04:13:11
@@ -337,7 +337,7 @@
 			timo++;
 		else
 			printf("RPC timeout for server 0x%x\n",
-			       ntohl(sin->sin_addr.s_addr));
+			       ntohl(sa->sin_addr.s_addr));
 
 		/*
 		 * Wait for up to timo seconds for a reply.


- Tor Egge

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199803130421.FAA16144>