summaryrefslogtreecommitdiff
path: root/sys/nfs
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>1998-05-20 08:02:24 +0000
committerPeter Wemm <peter@FreeBSD.org>1998-05-20 08:02:24 +0000
commitdfae73fd2edd0342b8ad2a816b156322724a47f8 (patch)
tree40ae9e08f35d6dd8185827b8bb18d70ede20bdfe /sys/nfs
parentc578853467a271756a069a508f2c0e1bc9a51287 (diff)
Notes
Diffstat (limited to 'sys/nfs')
-rw-r--r--sys/nfs/nfs_bio.c4
-rw-r--r--sys/nfs/nfs_vfsops.c6
2 files changed, 6 insertions, 4 deletions
diff --git a/sys/nfs/nfs_bio.c b/sys/nfs/nfs_bio.c
index 544ba3219153..d16bf1afc0fe 100644
--- a/sys/nfs/nfs_bio.c
+++ b/sys/nfs/nfs_bio.c
@@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* @(#)nfs_bio.c 8.9 (Berkeley) 3/30/95
- * $Id: nfs_bio.c,v 1.54 1998/03/28 16:05:05 steve Exp $
+ * $Id: nfs_bio.c,v 1.55 1998/05/19 07:11:22 peter Exp $
*/
@@ -1150,8 +1150,6 @@ nfs_doio(bp, cr, p)
case VDIR:
nfsstats.readdir_bios++;
uiop->uio_offset = ((u_quad_t)bp->b_lblkno) * NFS_DIRBLKSIZ;
- if (!(nmp->nm_flag & NFSMNT_NFSV3))
- nmp->nm_flag &= ~NFSMNT_RDIRPLUS;
if (nmp->nm_flag & NFSMNT_RDIRPLUS) {
error = nfs_readdirplusrpc(vp, uiop, cr);
if (error == NFSERR_NOTSUPP)
diff --git a/sys/nfs/nfs_vfsops.c b/sys/nfs/nfs_vfsops.c
index e6c72106ba3a..d6cdfe1aa26c 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.59 1998/05/19 07:11:25 peter Exp $
+ * $Id: nfs_vfsops.c,v 1.60 1998/05/20 07:59:21 peter Exp $
*/
#include <sys/param.h>
@@ -712,6 +712,10 @@ mountnfs(argp, mp, nam, pth, hst, vpp)
if (argp->sotype == SOCK_STREAM)
nmp->nm_flags &= ~NFSMNT_NOCONN;
+ /* Also clear RDIRPLUS if not NFSv3, it crashes some servers */
+ if ((argp->flags & NFSMNT_NFSV3) == 0)
+ nmp->nm_flag &= ~NFSMNT_RDIRPLUS;
+
if ((argp->flags & NFSMNT_TIMEO) && argp->timeo > 0) {
nmp->nm_timeo = (argp->timeo * NFS_HZ + 5) / 10;
if (nmp->nm_timeo < NFS_MINTIMEO)