summaryrefslogtreecommitdiffstats
path: root/sys/nfs/nfs_bio.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1998-05-19 07:11:27 +0000
committerpeter <peter@FreeBSD.org>1998-05-19 07:11:27 +0000
commit1777a04b110cd58eb32d0ad81d7cce33566c30ed (patch)
tree7d6f8932bbfd01ff67fabaef4fb555fd79ab7cc9 /sys/nfs/nfs_bio.c
parent56469e323e07fbfcd1eb45391d45c0a509b8bbe0 (diff)
downloadFreeBSD-src-1777a04b110cd58eb32d0ad81d7cce33566c30ed.zip
FreeBSD-src-1777a04b110cd58eb32d0ad81d7cce33566c30ed.tar.gz
Allow control of the attribute cache timeouts at mount time.
We had run out of bits in the nfs mount flags, I have moved the internal state flags into a seperate variable. These are no longer visible via statfs(), but I don't know of anything that looks at them.
Diffstat (limited to 'sys/nfs/nfs_bio.c')
-rw-r--r--sys/nfs/nfs_bio.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/nfs/nfs_bio.c b/sys/nfs/nfs_bio.c
index 46020e5..544ba32 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.53 1998/03/08 09:57:54 julian Exp $
+ * $Id: nfs_bio.c,v 1.54 1998/03/28 16:05:05 steve Exp $
*/
@@ -257,7 +257,8 @@ nfs_bioread(vp, uio, ioflag, cred, getpages)
if (uio->uio_offset < 0)
return (EINVAL);
p = uio->uio_procp;
- if ((nmp->nm_flag & (NFSMNT_NFSV3 | NFSMNT_GOTFSINFO)) == NFSMNT_NFSV3)
+ if ((nmp->nm_flag & NFSMNT_NFSV3) != 0 &&
+ (nmp->nm_state & NFSSTA_GOTFSINFO) == 0)
(void)nfs_fsinfo(nmp, vp, cred, p);
biosize = vp->v_mount->mnt_stat.f_iosize;
/*
@@ -636,7 +637,8 @@ nfs_write(ap)
np->n_flag &= ~NWRITEERR;
return (np->n_error);
}
- if ((nmp->nm_flag & (NFSMNT_NFSV3 | NFSMNT_GOTFSINFO)) == NFSMNT_NFSV3)
+ if ((nmp->nm_flag & NFSMNT_NFSV3) != 0 &&
+ (nmp->nm_state & NFSSTA_GOTFSINFO) == 0)
(void)nfs_fsinfo(nmp, vp, cred, p);
if (ioflag & (IO_APPEND | IO_SYNC)) {
if (np->n_flag & NMODIFIED) {
OpenPOWER on IntegriCloud