summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortegge <tegge@FreeBSD.org>1998-03-14 03:25:18 +0000
committertegge <tegge@FreeBSD.org>1998-03-14 03:25:18 +0000
commit3483aa429fc32f1e613bff2b2f885f0ef7335433 (patch)
treeb5afd6b21266a185ed638fd66eca8443992fea4d
parentc152386e5a25bad66d6be8df3bc8db31976a407e (diff)
downloadFreeBSD-src-3483aa429fc32f1e613bff2b2f885f0ef7335433.zip
FreeBSD-src-3483aa429fc32f1e613bff2b2f885f0ef7335433.tar.gz
Update workaround for limitations in the arp code.
Adjust the RPC timeout message which occured when the old workaround broke to show the correct IP address.
-rw-r--r--sys/nfs/bootp_subr.c8
-rw-r--r--sys/nfs/krpc_subr.c4
-rw-r--r--sys/nfs/nfs_vfsops.c6
-rw-r--r--sys/nfsclient/bootp_subr.c8
-rw-r--r--sys/nfsclient/krpc_subr.c4
-rw-r--r--sys/nfsclient/nfs_vfsops.c6
6 files changed, 18 insertions, 18 deletions
diff --git a/sys/nfs/bootp_subr.c b/sys/nfs/bootp_subr.c
index 891b935..4053bc3 100644
--- a/sys/nfs/bootp_subr.c
+++ b/sys/nfs/bootp_subr.c
@@ -1,4 +1,4 @@
-/* $Id: bootp_subr.c,v 1.8 1998/01/18 18:46:20 tegge Exp $ */
+/* $Id: bootp_subr.c,v 1.9 1998/02/09 06:10:32 eivind Exp $ */
/*
* Copyright (c) 1995 Gordon Ross, Adam Glass
@@ -766,10 +766,10 @@ bootpc_init(void)
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.
diff --git a/sys/nfs/krpc_subr.c b/sys/nfs/krpc_subr.c
index 63aea3b..be53843 100644
--- a/sys/nfs/krpc_subr.c
+++ b/sys/nfs/krpc_subr.c
@@ -1,5 +1,5 @@
/* $NetBSD: krpc_subr.c,v 1.12.4.1 1996/06/07 00:52:26 cgd Exp $ */
-/* $Id: krpc_subr.c,v 1.6 1997/10/12 20:25:36 phk Exp $ */
+/* $Id: krpc_subr.c,v 1.7 1997/10/28 15:59:03 bde Exp $ */
/*
* Copyright (c) 1995 Gordon Ross, Adam Glass
@@ -337,7 +337,7 @@ krpc_call(sa, prog, vers, func, data, from_p, procp)
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.
diff --git a/sys/nfs/nfs_vfsops.c b/sys/nfs/nfs_vfsops.c
index 9ad89eb..b301b24 100644
--- a/sys/nfs/nfs_vfsops.c
+++ b/sys/nfs/nfs_vfsops.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)nfs_vfsops.c 8.12 (Berkeley) 5/20/95
- * $Id: nfs_vfsops.c,v 1.54 1998/02/09 06:10:39 eivind Exp $
+ * $Id: nfs_vfsops.c,v 1.55 1998/03/01 22:46:30 msmith Exp $
*/
#include <sys/param.h>
@@ -399,8 +399,8 @@ nfs_mountroot(mp)
* 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();
diff --git a/sys/nfsclient/bootp_subr.c b/sys/nfsclient/bootp_subr.c
index 891b935..4053bc3 100644
--- a/sys/nfsclient/bootp_subr.c
+++ b/sys/nfsclient/bootp_subr.c
@@ -1,4 +1,4 @@
-/* $Id: bootp_subr.c,v 1.8 1998/01/18 18:46:20 tegge Exp $ */
+/* $Id: bootp_subr.c,v 1.9 1998/02/09 06:10:32 eivind Exp $ */
/*
* Copyright (c) 1995 Gordon Ross, Adam Glass
@@ -766,10 +766,10 @@ bootpc_init(void)
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.
diff --git a/sys/nfsclient/krpc_subr.c b/sys/nfsclient/krpc_subr.c
index 63aea3b..be53843 100644
--- a/sys/nfsclient/krpc_subr.c
+++ b/sys/nfsclient/krpc_subr.c
@@ -1,5 +1,5 @@
/* $NetBSD: krpc_subr.c,v 1.12.4.1 1996/06/07 00:52:26 cgd Exp $ */
-/* $Id: krpc_subr.c,v 1.6 1997/10/12 20:25:36 phk Exp $ */
+/* $Id: krpc_subr.c,v 1.7 1997/10/28 15:59:03 bde Exp $ */
/*
* Copyright (c) 1995 Gordon Ross, Adam Glass
@@ -337,7 +337,7 @@ krpc_call(sa, prog, vers, func, data, from_p, procp)
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.
diff --git a/sys/nfsclient/nfs_vfsops.c b/sys/nfsclient/nfs_vfsops.c
index 9ad89eb..b301b24 100644
--- a/sys/nfsclient/nfs_vfsops.c
+++ b/sys/nfsclient/nfs_vfsops.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)nfs_vfsops.c 8.12 (Berkeley) 5/20/95
- * $Id: nfs_vfsops.c,v 1.54 1998/02/09 06:10:39 eivind Exp $
+ * $Id: nfs_vfsops.c,v 1.55 1998/03/01 22:46:30 msmith Exp $
*/
#include <sys/param.h>
@@ -399,8 +399,8 @@ nfs_mountroot(mp)
* 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();
OpenPOWER on IntegriCloud