Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Jun 2014 01:19:52 +0000 (UTC)
From:      Rick Macklem <rmacklem@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r267709 - projects/nfsv4.1-server/sys/fs/nfsserver
Message-ID:  <201406220119.s5M1Jqdx013754@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rmacklem
Date: Sun Jun 22 01:19:52 2014
New Revision: 267709
URL: http://svnweb.freebsd.org/changeset/base/267709

Log:
  Fix the Claim_delegate_current case for Open in the NFSv4.1 server.

Modified:
  projects/nfsv4.1-server/sys/fs/nfsserver/nfs_nfsdstate.c

Modified: projects/nfsv4.1-server/sys/fs/nfsserver/nfs_nfsdstate.c
==============================================================================
--- projects/nfsv4.1-server/sys/fs/nfsserver/nfs_nfsdstate.c	Sun Jun 22 00:53:33 2014	(r267708)
+++ projects/nfsv4.1-server/sys/fs/nfsserver/nfs_nfsdstate.c	Sun Jun 22 01:19:52 2014	(r267709)
@@ -2267,7 +2267,9 @@ tryagain:
 	     */
 	    LIST_FOREACH(stp, &lfp->lf_deleg, ls_file) {
 		if (!(stp->ls_flags & NFSLCK_OLDDELEG) &&
-		    stateidp->seqid == stp->ls_stateid.seqid &&
+		    (((nd->nd_flag & ND_NFSV41) != 0 &&
+		    stateidp->seqid == 0) ||
+		    stateidp->seqid == stp->ls_stateid.seqid) &&
 		    !NFSBCMP(stateidp->other, stp->ls_stateid.other,
 			  NFSX_STATEIDOTHER))
 			break;
@@ -2524,7 +2526,9 @@ tryagain:
 	     */
 	    LIST_FOREACH(stp, &lfp->lf_deleg, ls_file) {
 		if (!(stp->ls_flags & NFSLCK_OLDDELEG) &&
-		    stateidp->seqid == stp->ls_stateid.seqid &&
+		    (((nd->nd_flag & ND_NFSV41) != 0 &&
+		    stateidp->seqid == 0) ||
+		    stateidp->seqid == stp->ls_stateid.seqid) &&
 		    !NFSBCMP(stateidp->other, stp->ls_stateid.other,
 			NFSX_STATEIDOTHER))
 			break;



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