From 1d8015ceb7d7567b75c83f37f7f00510ee6eeca6 Mon Sep 17 00:00:00 2001 From: rwatson Date: Sun, 23 Jan 2005 21:01:00 +0000 Subject: When reading pr_securelevel from a prison, perform a lockless read, as it's an integer read operation and the resulting slight race is acceptable. MFC after: 1 week --- sys/kern/kern_prot.c | 4 ---- 1 file changed, 4 deletions(-) (limited to 'sys/kern/kern_prot.c') diff --git a/sys/kern/kern_prot.c b/sys/kern/kern_prot.c index 2f988ea..57216db 100644 --- a/sys/kern/kern_prot.c +++ b/sys/kern/kern_prot.c @@ -1276,10 +1276,8 @@ securelevel_gt(struct ucred *cr, int level) active_securelevel = securelevel; KASSERT(cr != NULL, ("securelevel_gt: null cr")); if (cr->cr_prison != NULL) { - mtx_lock(&cr->cr_prison->pr_mtx); active_securelevel = imax(cr->cr_prison->pr_securelevel, active_securelevel); - mtx_unlock(&cr->cr_prison->pr_mtx); } return (active_securelevel > level ? EPERM : 0); } @@ -1292,10 +1290,8 @@ securelevel_ge(struct ucred *cr, int level) active_securelevel = securelevel; KASSERT(cr != NULL, ("securelevel_ge: null cr")); if (cr->cr_prison != NULL) { - mtx_lock(&cr->cr_prison->pr_mtx); active_securelevel = imax(cr->cr_prison->pr_securelevel, active_securelevel); - mtx_unlock(&cr->cr_prison->pr_mtx); } return (active_securelevel >= level ? EPERM : 0); } -- cgit v1.1