]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
FBSD: adhere to gop_lookupname() semantics
authorBen Kaduk <kaduk@mit.edu>
Fri, 18 Jul 2014 19:19:24 +0000 (15:19 -0400)
committerStephan Wiesand <stephan.wiesand@desy.de>
Wed, 10 Sep 2014 14:09:54 +0000 (10:09 -0400)
The current semantics are that gop_lookupname() returns an unlocked
vnode; the previous code was written to a different semantic that
a locked vnode should be returned.

This makes a disk cache more likely to work on FreeBSD, but such
configurations remain not very tested.

Reviewed-on: http://gerrit.openafs.org/11317
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: D Brashear <shadow@your-file-system.com>
(cherry picked from commit 774d77e056515ae3e87c8f0be8e133c3cdb36bbb)

Change-Id: I4ae9c269412c2ce6b9ec39a841ea87f27630591e
Reviewed-on: http://gerrit.openafs.org/11448
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
src/afs/FBSD/osi_misc.c

index 5fdd4612e6d4e62751a06ef1c187658de411c241..d0d862dbfc5c69d9dd20864b39a6654e90a06006 100644 (file)
@@ -32,9 +32,9 @@ osi_lookupname(char *aname, enum uio_seg seg, int followlink,
        AFS_GUNLOCK();
 
 #if __FreeBSD_version >= 1000021 /* MPSAFE is gone for good! */
-    flags = LOCKLEAF;
+    flags = 0;
 #else
-    flags = LOCKLEAF | MPSAFE; /* namei must take Giant if needed */
+    flags = MPSAFE; /* namei must take Giant if needed */
 #endif
     if (followlink)
        flags |= FOLLOW;