summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorjeff <jeff@FreeBSD.org>2005-05-01 00:59:34 +0000
committerjeff <jeff@FreeBSD.org>2005-05-01 00:59:34 +0000
commit1bc61f8f0f63063c86ca6eac0955422e1c74c448 (patch)
treed1cf53a9ae9cd6d71619199d24daa401e18ff157 /sys
parent80bb41c9219bf45afe1f929787ff029618416ce2 (diff)
downloadFreeBSD-src-1bc61f8f0f63063c86ca6eac0955422e1c74c448.zip
FreeBSD-src-1bc61f8f0f63063c86ca6eac0955422e1c74c448.tar.gz
- Remove unnecessary spls.
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/vfs_default.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/sys/kern/vfs_default.c b/sys/kern/vfs_default.c
index 5202e9c..32f3f9b 100644
--- a/sys/kern/vfs_default.c
+++ b/sys/kern/vfs_default.c
@@ -382,7 +382,7 @@ vop_stdfsync(ap)
struct buf *bp;
struct bufobj *bo;
struct buf *nbp;
- int s, error = 0;
+ int error = 0;
int maxretry = 1000; /* large, arbitrarily chosen */
VI_LOCK(vp);
@@ -390,18 +390,15 @@ loop1:
/*
* MARK/SCAN initialization to avoid infinite loops.
*/
- s = splbio();
TAILQ_FOREACH(bp, &vp->v_bufobj.bo_dirty.bv_hd, b_bobufs) {
bp->b_vflags &= ~BV_SCANNED;
bp->b_error = 0;
}
- splx(s);
/*
* Flush all dirty buffers associated with a vnode.
*/
loop2:
- s = splbio();
TAILQ_FOREACH_SAFE(bp, &vp->v_bufobj.bo_dirty.bv_hd, b_bobufs, nbp) {
if ((bp->b_vflags & BV_SCANNED) != 0)
continue;
@@ -413,10 +410,8 @@ loop2:
panic("fsync: not dirty");
if ((vp->v_object != NULL) && (bp->b_flags & B_CLUSTEROK)) {
vfs_bio_awrite(bp);
- splx(s);
} else {
bremfree(bp);
- splx(s);
bawrite(bp);
}
VI_LOCK(vp);
@@ -441,17 +436,14 @@ loop2:
TAILQ_FOREACH(bp, &bo->bo_dirty.bv_hd, b_bobufs)
if ((error = bp->b_error) == 0)
continue;
- if (error == 0 && --maxretry >= 0) {
- splx(s);
+ if (error == 0 && --maxretry >= 0)
goto loop1;
- }
error = EAGAIN;
}
}
VI_UNLOCK(vp);
if (error == EAGAIN)
vprint("fsync: giving up on dirty", vp);
- splx(s);
return (error);
}
OpenPOWER on IntegriCloud