All filesystems must have their own locking now.
We have been MPSAFE for quite some time, but the preprocessor macro
"MPSAFE" has been removed and we must catch up in order to compile.
The MNTK_MPSAFE macro has not yet been removed, but it is toothless
now, so we can preemptively stop using it.
Change-Id: I9d9090fd1afc020670a0cf874baacf483fd34915
Reviewed-on: http://gerrit.openafs.org/8366
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
if (glocked)
AFS_GUNLOCK();
+#if __FreeBSD_version >= 1000021 /* MPSAFE is gone for good! */
+ flags = LOCKLEAF;
+#else
flags = LOCKLEAF | MPSAFE; /* namei must take Giant if needed */
+#endif
if (followlink)
flags |= FOLLOW;
else
#if defined(AFS_FBSD61_ENV) && !defined(AFS_FBSD62_ENV)
MNT_ILOCK(mp);
#endif
+#if __FreeBSD_version < 1000021
mp->mnt_kern_flag |= MNTK_MPSAFE; /* solid steel */
+#endif
#ifndef AFS_FBSD61_ENV
MNT_ILOCK(mp);
#endif
lockparent = flags & LOCKPARENT;
wantparent = flags & (LOCKPARENT | WANTPARENT);
+#if __FreeBSD_version < 1000021
cnp->cn_flags |= MPSAFE; /* steel */
+#endif
if (flags & ISDOTDOT)
MA_VOP_UNLOCK(dvp, 0, p);