From: Jeffrey Hutzelman Date: Mon, 8 Nov 2004 05:52:36 +0000 (+0000) Subject: nfs-root-mtime-20041108 X-Git-Tag: BP-disconnected~159 X-Git-Url: http://git.openafs.org/?p=openafs.git;a=commitdiff_plain;h=884335d78318aca00293245c9d481fd285ceba59 nfs-root-mtime-20041108 FIXES 15960 don't reset root mtime, solaris 9 wants it to be the same across multiple calls --- diff --git a/src/afs/VNOPS/afs_vnop_attrs.c b/src/afs/VNOPS/afs_vnop_attrs.c index f027618..260702a 100644 --- a/src/afs/VNOPS/afs_vnop_attrs.c +++ b/src/afs/VNOPS/afs_vnop_attrs.c @@ -317,6 +317,14 @@ afs_getattr(OSI_VC_DECL(avc), struct vattr *attrs, struct AFS_UCRED *acred) CMB_ALLOW_EXEC_AS_READ)) { return EACCES; } +#if 0 +/* The effect of the following is to force the NFS client to refetch the + * volume root every time, since the mtime changes. For Solaris 9 NFSv3 + * clients, this means looping forever, since for some reason (related + * to caching?) it wants the mtime to be consistent two reads in a row. + * Why are volume roots special??? + * --jhutz 2-May-2004 + */ if (avc->mvstat == 2) { #if defined(AFS_SGI_ENV) || defined(AFS_SUN5_ENV) || defined(AFS_AIX41_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV) attrs->va_mtime.tv_nsec += ((++avc->xlatordv) * 1000); @@ -324,6 +332,7 @@ afs_getattr(OSI_VC_DECL(avc), struct vattr *attrs, struct AFS_UCRED *acred) attrs->va_mtime.tv_usec += ++avc->xlatordv; #endif } +#endif } if ((au = afs_FindUser(treq.uid, -1, READ_LOCK))) { register struct afs_exporter *exporter = au->exporter;