summaryrefslogtreecommitdiffstats
path: root/sys/vm
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2003-04-05 21:01:16 +0000
committeralc <alc@FreeBSD.org>2003-04-05 21:01:16 +0000
commit12f92b3b2879b2801c637a576611ccf2a66551bd (patch)
tree295b9fbc03083d0c48dc8a823a57426d9604c17b /sys/vm
parent29be5a9beb872d09b5ff060342399534c66dbed7 (diff)
downloadFreeBSD-src-12f92b3b2879b2801c637a576611ccf2a66551bd.zip
FreeBSD-src-12f92b3b2879b2801c637a576611ccf2a66551bd.tar.gz
Remove GIANT_REQUIRED from getpbuf(). Reviewed by: tegge
Reduce pbuf_mtx's scope in relpbuf(). Submitted by: tegge
Diffstat (limited to 'sys/vm')
-rw-r--r--sys/vm/vm_pager.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/sys/vm/vm_pager.c b/sys/vm/vm_pager.c
index 342c98a..46bdd41 100644
--- a/sys/vm/vm_pager.c
+++ b/sys/vm/vm_pager.c
@@ -371,7 +371,6 @@ getpbuf(pfreecnt)
struct buf *bp;
s = splvm();
- GIANT_REQUIRED;
mtx_lock(&pbuf_mtx);
for (;;) {
@@ -445,7 +444,6 @@ relpbuf(bp, pfreecnt)
int s;
s = splvm();
- mtx_lock(&pbuf_mtx);
if (bp->b_rcred != NOCRED) {
crfree(bp->b_rcred);
@@ -461,6 +459,7 @@ relpbuf(bp, pfreecnt)
BUF_UNLOCK(bp);
+ mtx_lock(&pbuf_mtx);
TAILQ_INSERT_HEAD(&bswlist, bp, b_freelist);
if (bswneeded) {
OpenPOWER on IntegriCloud