Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 15 Jul 2017 19:43:02 +0000 (UTC)
From:      Rick Macklem <rmacklem@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r321032 - stable/11/sys/fs/nfsclient
Message-ID:  <201707151943.v6FJh2nH026735@repo.freebsd.org>

index | next in thread | raw e-mail

Author: rmacklem
Date: Sat Jul 15 19:43:02 2017
New Revision: 321032
URL: https://svnweb.freebsd.org/changeset/base/321032

Log:
  MFC: r320458
  Fix an NFSv3 client case that probably never happens.
  
  If an NFSv3 server were to reply with weak cache consistency attributes,
  but not post operation attributes, the client would use garbage attributes
  from memory. This was spotted during work on the code for the NFSv4.1 client.
  I have never seen evidence that this happens and it wouldn't make sense
  for an NFSv3 server to do this, so this patch is basically "theoretical",
  but does fix the problem if a server were to do the above.

Modified:
  stable/11/sys/fs/nfsclient/nfs_clport.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/fs/nfsclient/nfs_clport.c
==============================================================================
--- stable/11/sys/fs/nfsclient/nfs_clport.c	Sat Jul 15 19:24:54 2017	(r321031)
+++ stable/11/sys/fs/nfsclient/nfs_clport.c	Sat Jul 15 19:43:02 2017	(r321032)
@@ -743,6 +743,8 @@ nfscl_wcc_data(struct nfsrv_descript *nd, struct vnode
 			}
 		}
 		error = nfscl_postop_attr(nd, nap, flagp, stuff);
+		if (wccflagp != NULL && *flagp == 0)
+			*wccflagp = 0;
 	} else if ((nd->nd_flag & (ND_NOMOREDATA | ND_NFSV4 | ND_V4WCCATTR))
 	    == (ND_NFSV4 | ND_V4WCCATTR)) {
 		error = nfsv4_loadattr(nd, NULL, &nfsva, NULL,


home | help

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