Re: [Ext2-devel] [RFC] ext3/jbd race: releasing in-usejournal_heads
From: Stephen C. Tweedie
Date: Mon Mar 07 2005 - 09:29:46 EST
Hi,
On Fri, 2005-03-04 at 23:17, Badari Pulavarty wrote:
> I looked at few journalling bugs recently on RHEL4 testing here.
> I am wondering if your patch fixes this following BUG also ?
> I never got to bottom of some of these journal panics -
> since they are not easily reproducible
Right...
> + I don't understand
> journal code well enough :(
Fortunately this one seems to be a simple locking violation, nothing
subtle in the jbd layers.
> Assertion failure in journal_commit_transaction() at fs/jbd/commit.c:790: "jh->b_next_transaction == ((void *)0)"
> kernel BUG in journal_commit_transaction at fs/jbd/commit.c:790!
I'm assuming that's the line
J_ASSERT_JH(jh, jh->b_next_transaction == NULL);
in the t_forget loop. That's not one of the most common footprints I
saw due to this bug, but it's certainly a possible one. We saw one case
where a bh from the wrong transaction was linked onto the j_locked_list,
due to it being freed then reused while in use; and if that can happen,
pretty much anything can go wrong afterwards!
--Stephen
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/