Re: data corrupting bug in 2.4.20 ext3, data=journal

From: Nick Piggin (piggin@cyberone.com.au)
Date: Mon Dec 02 2002 - 03:26:20 EST


Andrew Morton wrote:

>Nick Piggin wrote:
>>
>> Andrew Morton wrote:
>>
>> >In 2.4.20-pre5 an optimisation was made to the ext3 fsync function
>> >which can very easily cause file data corruption at unmount time. This
>> >was first reported by Nick Piggin on November 29th (one day after 2.4.20 was
>> >released, and three months after the bug was merged. Unfortunate timing)
>> >
>> In fact it was reported on lkml on 18th July IIRC before 2.4.19 was
>> released if that is any help to you. 2.4.19 and 2.4.20 are affected
>> and I haven't tested previous releases. I was going to re-report it
>> sometime, but Alan brought it to light just the other day.
>>
>
>Are you sure? I can't make it happen on 2.4.19. And disabling the new
>BH_Freed logic (which went into 2.4.20-pre5) makes it go away.
>
>
>--- linux-akpm/fs/jbd/commit.c~a Sun Dec 1 23:10:12 2002
>+++ linux-akpm-akpm/fs/jbd/commit.c Sun Dec 1 23:10:27 2002
>@@ -695,7 +695,7 @@ skip_commit: /* The journal should be un
> * use in a different page. */
> if (__buffer_state(bh, Freed)) {
> clear_bit(BH_Freed, &bh->b_state);
>- clear_bit(BH_JBDDirty, &bh->b_state);
>+// clear_bit(BH_JBDDirty, &bh->b_state);
> }
>
> if (buffer_jdirty(bh)) {
>
I reported the bug for 2.4.19-rc1 and 2 but I can't remember if I tested
2.4.19
when it was released. It has an external journal on a seperate disk. I can't
really do any testing with the machine unfortunately.

Regards,
Nick

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Dec 07 2002 - 22:00:12 EST