summaryrefslogtreecommitdiffstats
path: root/sys/kern
diff options
context:
space:
mode:
authorjeff <jeff@FreeBSD.org>2002-04-09 05:14:17 +0000
committerjeff <jeff@FreeBSD.org>2002-04-09 05:14:17 +0000
commit0b5e15cef7e330c83d47d2a7a5a4e738694c1324 (patch)
treebb0a617bffb016969e8ff3d8fdc28fa058d41c57 /sys/kern
parentf145b3f0f45ceb2c9e4fa29f25e223320156b800 (diff)
downloadFreeBSD-src-0b5e15cef7e330c83d47d2a7a5a4e738694c1324.zip
FreeBSD-src-0b5e15cef7e330c83d47d2a7a5a4e738694c1324.tar.gz
Turn #ifdef LOOKUP_SHARED into #ifndef LOOKUP_EXCLUSIVE to enable this
behavior by default. Also, change the options line to reflect this. If there are no problems reported this will become the only behavior and the knob will be removed in a month or so. Demanded by: obrien
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/vfs_cache.c8
-rw-r--r--sys/kern/vfs_extattr.c2
-rw-r--r--sys/kern/vfs_syscalls.c2
-rw-r--r--sys/kern/vfs_vnops.c10
4 files changed, 11 insertions, 11 deletions
diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c
index 6fd537f..49bd83f 100644
--- a/sys/kern/vfs_cache.c
+++ b/sys/kern/vfs_cache.c
@@ -566,7 +566,7 @@ vfs_cache_lookup(ap)
error = cache_lookup(dvp, vpp, cnp);
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
if (!error) {
/* We do this because the rest of the system now expects to get
* a shared lock, which is later upgraded if LOCKSHARED is not
@@ -608,7 +608,7 @@ vfs_cache_lookup(ap)
} else if (flags & ISDOTDOT) {
VOP_UNLOCK(dvp, 0, td);
cnp->cn_flags |= PDIRUNLOCK;
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
if ((flags & ISLASTCN) && (flags & LOCKSHARED))
error = vget(vp, LK_SHARED, td);
else
@@ -622,7 +622,7 @@ vfs_cache_lookup(ap)
cnp->cn_flags &= ~PDIRUNLOCK;
}
} else {
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
if ((flags & ISLASTCN) && (flags & LOCKSHARED))
error = vget(vp, LK_SHARED, td);
else
@@ -654,7 +654,7 @@ vfs_cache_lookup(ap)
return (error);
cnp->cn_flags &= ~PDIRUNLOCK;
}
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
error = VOP_CACHEDLOOKUP(dvp, vpp, cnp);
if (!error) {
diff --git a/sys/kern/vfs_extattr.c b/sys/kern/vfs_extattr.c
index 8de1c0e..157f6be 100644
--- a/sys/kern/vfs_extattr.c
+++ b/sys/kern/vfs_extattr.c
@@ -2577,7 +2577,7 @@ stat(td, uap)
int error;
struct nameidata nd;
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
NDINIT(&nd, LOOKUP, FOLLOW | LOCKSHARED | LOCKLEAF | NOOBJ,
UIO_USERSPACE, SCARG(uap, path), td);
#else
diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c
index 8de1c0e..157f6be 100644
--- a/sys/kern/vfs_syscalls.c
+++ b/sys/kern/vfs_syscalls.c
@@ -2577,7 +2577,7 @@ stat(td, uap)
int error;
struct nameidata nd;
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
NDINIT(&nd, LOOKUP, FOLLOW | LOCKSHARED | LOCKLEAF | NOOBJ,
UIO_USERSPACE, SCARG(uap, path), td);
#else
diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c
index 9eb60f9..3187a47 100644
--- a/sys/kern/vfs_vnops.c
+++ b/sys/kern/vfs_vnops.c
@@ -106,7 +106,7 @@ vn_open_cred(ndp, flagp, cmode, cred)
struct vattr vat;
struct vattr *vap = &vat;
int mode, fmode, error;
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
int exclusive; /* The current intended lock state */
exclusive = 0;
@@ -149,7 +149,7 @@ restart:
ASSERT_VOP_LOCKED(ndp->ni_vp, "create");
fmode &= ~O_TRUNC;
vp = ndp->ni_vp;
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
exclusive = 1;
#endif
} else {
@@ -167,7 +167,7 @@ restart:
}
} else {
ndp->ni_cnd.cn_nameiop = LOOKUP;
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
ndp->ni_cnd.cn_flags =
((fmode & O_NOFOLLOW) ? NOFOLLOW : FOLLOW) |
LOCKSHARED | LOCKLEAF;
@@ -213,7 +213,7 @@ restart:
* Make sure that a VM object is created for VMIO support.
*/
if (vn_canvmio(vp) == TRUE) {
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
int flock;
if (!exclusive && vp->v_object == NULL)
@@ -236,7 +236,7 @@ restart:
*flagp = fmode;
return (error);
}
-#ifdef LOOKUP_SHARED
+#ifndef LOOKUP_EXCLUSIVE
flock = VOP_ISLOCKED(vp, td);
if (!exclusive && flock == LK_EXCLUSIVE)
VOP_LOCK(vp, LK_DOWNGRADE, td);
OpenPOWER on IntegriCloud