[issue1601] ext2fs Panics on writing files
YONETANI Tomokazu
qhwt+dfly at les.ath.cx
Wed Nov 11 21:04:27 PST 2009
On Thu, Nov 12, 2009 at 12:12:33AM +0000, Venkatesh Srinivas (via DragonFly issue tracker) wrote:
> Two different panics, trying to write files to an ext2 file system made on
> Linux. Here are the backtraces:
I think they're the same one: the caller of ext2_fsync_bp() has been
converted to use a token to protect the rb tree, but the callee still
assumes that it's called with critical section entered:
diff --git a/sys/vfs/gnu/ext2fs/ext2_vnops.c b/sys/vfs/gnu/ext2fs/ext2_vnops.c
index 1b7fa73..99b0bb5 100644
--- a/sys/vfs/gnu/ext2fs/ext2_vnops.c
+++ b/sys/vfs/gnu/ext2fs/ext2_vnops.c
@@ -251,7 +251,6 @@ ext2_fsync_bp(struct buf *bp, void *data)
if ((bp->b_flags & B_DELWRI) == 0)
panic("ext2_fsync: not dirty");
bremfree(bp);
- crit_exit();
/*
* Wait for I/O associated with indirect blocks to complete,
@@ -261,7 +260,6 @@ ext2_fsync_bp(struct buf *bp, void *data)
bawrite(bp);
else
bwrite(bp);
- crit_enter();
return(1);
}
More information about the Bugs
mailing list