summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorArtur Grabowski <art@cvs.openbsd.org>2007-08-04 03:33:32 +0000
committerArtur Grabowski <art@cvs.openbsd.org>2007-08-04 03:33:32 +0000
commitf022db704ed94cee03d879afbdd82228a6b2f092 (patch)
treed9f6142a5cf1cbc6e38750141a974ec87e44a282 /sys
parent72fdd4aa7ffacbc35e9c3a225ae6e1a5afaaf5b7 (diff)
When we're writing out the summary information and fail on some block
we'll just randomly brelse a random block that might or might no have been the block that failed. Which wouldn't be necessary anyway since bwrite releases the block wether the write succeeded or not. And if someone won the race for that block (perfectly possible since we're sleeping in this function) we'll just release a live block under his feet. beck@ ok
Diffstat (limited to 'sys')
-rw-r--r--sys/ufs/ffs/ffs_vfsops.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/sys/ufs/ffs/ffs_vfsops.c b/sys/ufs/ffs/ffs_vfsops.c
index 022f0273d69..5ff86b1ed31 100644
--- a/sys/ufs/ffs/ffs_vfsops.c
+++ b/sys/ufs/ffs/ffs_vfsops.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ffs_vfsops.c,v 1.108 2007/06/06 09:53:16 pedro Exp $ */
+/* $OpenBSD: ffs_vfsops.c,v 1.109 2007/08/04 03:33:31 art Exp $ */
/* $NetBSD: ffs_vfsops.c,v 1.19 1996/02/09 22:22:26 christos Exp $ */
/*
@@ -1445,7 +1445,6 @@ ffs_sbupdate(struct ufsmount *mp, int waitfor)
* being written out as clean.
*/
if (allerror) {
- brelse(bp);
return (allerror);
}