Re: Re: Re: EXT4 panic at jbd2_journal_put_journal_head() in 3.9+

From: EUNBONG SONG
Date: Mon May 13 2013 - 05:54:01 EST




> Hi all,

> First of all I couldn't reproduce this regression in my sand box. So
> the following speculation is only my guess. I suspect that the commit
> (ae4647fb) isn't root cause. It just uncover a potential bug that has
> been there for a long time. I look at the code, and found two
> suspicious stuff in jbd2. The first one is in do_get_write_access().
> In this function we forgot to lock bh state when we check b_jlist ==
> BJ_Shadow. I generate a patch to fix it, and I really think it is the
> root cause. Further, in __journal_remove_journal_head() we check
> b_jlist == BJ_None. But, when this function is called, bh state won't
> be locked sometimes. So I suspect this is why we hit a BUG in
> jbd2_journal_put_journal_head(). But I don't have a good solution to
> fix this until now because I don't know whether we need to lock bh state
> here, or maybe we should remove this assertation.
>
> So, generally, Tony, Eunbong, could you please try the following patch?
>
> Thanks in advance,
> - Zheng


Hi, I tested your patch. Unfortunately, the same problem was reproduced.
Thanks.
翁{.nÇ+돴윯돪†+%듚lzwm낂b앸㎠咽r¸›zX㎉®w¥Š{ayºÊ뉅숇,j?f"·hš뗠z¹®wⅱ¸ ◁¦j:+v돣ŠwèjØm¶Ÿÿ¾«묎çzZ+껠šŽ듶¢j"얎!¶iO뺞¬z·švØ^¶m§ÿ操 nÆ듺þY&—