diff options
author | Konstantin Belousov <kib@FreeBSD.org> | 2019-09-07 16:10:57 +0000 |
---|---|---|
committer | Konstantin Belousov <kib@FreeBSD.org> | 2019-09-07 16:10:57 +0000 |
commit | 1040254b7580e5b3d3cd954357098e1d843d6129 (patch) | |
tree | d2eb37931100869388b1bc1897f48910176b7622 /sys/kern/kern_exec.c | |
parent | 1c36b72874add3b95a865e6d74dfc1b054086f03 (diff) | |
download | src-1040254b7580e5b3d3cd954357098e1d843d6129.tar.gz src-1040254b7580e5b3d3cd954357098e1d843d6129.zip |
Notes
Diffstat (limited to 'sys/kern/kern_exec.c')
-rw-r--r-- | sys/kern/kern_exec.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/kern/kern_exec.c b/sys/kern/kern_exec.c index 24f9e07ddfe1..ed8f55c4afa9 100644 --- a/sys/kern/kern_exec.c +++ b/sys/kern/kern_exec.c @@ -526,7 +526,7 @@ interpret: euip = uifind(attr.va_uid); change_euid(imgp->newcred, euip); } - vn_lock(imgp->vp, LK_EXCLUSIVE | LK_RETRY); + vn_lock(imgp->vp, LK_SHARED | LK_RETRY); if (attr.va_mode & S_ISGID) change_egid(imgp->newcred, attr.va_gid); /* @@ -555,7 +555,7 @@ interpret: oldcred->cr_svgid != oldcred->cr_gid) { VOP_UNLOCK(imgp->vp, 0); imgp->newcred = crdup(oldcred); - vn_lock(imgp->vp, LK_EXCLUSIVE | LK_RETRY); + vn_lock(imgp->vp, LK_SHARED | LK_RETRY); change_svuid(imgp->newcred, imgp->newcred->cr_uid); change_svgid(imgp->newcred, imgp->newcred->cr_gid); } @@ -572,7 +572,7 @@ interpret: if (vn_fullpath(td, imgp->vp, &imgp->execpath, &imgp->freepath) != 0) imgp->execpath = args->fname; - vn_lock(imgp->vp, LK_EXCLUSIVE | LK_RETRY); + vn_lock(imgp->vp, LK_SHARED | LK_RETRY); } /* |