summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpjd <pjd@FreeBSD.org>2007-04-08 02:13:32 +0000
committerpjd <pjd@FreeBSD.org>2007-04-08 02:13:32 +0000
commit314f7e910423221e34b2536e6382f36ea359f97b (patch)
tree98264244df79c73fcc88c0f244ca24f8fbbd76ad
parent65ca3ed32447dd61b47a8e46aace627e77eb772d (diff)
downloadFreeBSD-src-314f7e910423221e34b2536e6382f36ea359f97b.zip
FreeBSD-src-314f7e910423221e34b2536e6382f36ea359f97b.tar.gz
pr_list is protected by the allprison_lock.
-rw-r--r--sys/kern/kern_jail.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/kern_jail.c b/sys/kern/kern_jail.c
index ea244cc..dc58ae6 100644
--- a/sys/kern/kern_jail.c
+++ b/sys/kern/kern_jail.c
@@ -311,8 +311,8 @@ prison_free(struct prison *pr)
mtx_lock(&pr->pr_mtx);
pr->pr_ref--;
if (pr->pr_ref == 0) {
- LIST_REMOVE(pr, pr_list);
mtx_unlock(&pr->pr_mtx);
+ LIST_REMOVE(pr, pr_list);
prisoncount--;
sx_downgrade(&allprison_lock);
TAILQ_FOREACH(psrv, &prison_services, ps_next) {
OpenPOWER on IntegriCloud