Bug #1601
closedext2fs Panics on writing files
0%
Description
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);
}