All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christopher Chan <cchan@outblaze.com>
To: Andrew Morton <akpm@osdl.org>
Cc: Seiji Kihara <kihara.seiji@lab.ntt.co.jp>,
	ext3-users@redhat.com, ospfs@lab.ntt.co.jp,
	linux-fsdevel@vger.kernel.org, sct@redhat.com,
	adilger@clusterfs.com, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] BUG on fsync/fdatasync with Ext3 data=journal
Date: Fri, 17 Sep 2004 16:51:50 +0800	[thread overview]
Message-ID: <414AA5A6.3020907@outblaze.com> (raw)
In-Reply-To: <20040916145059.44a7e800.akpm@osdl.org>

Andrew Morton wrote:
> Seiji Kihara <kihara.seiji@lab.ntt.co.jp> wrote:
> 
>>We found that fsync and fdatasync syscalls sometimes don't sync
>>data in an ext3 file system under the following conditions.
>>
>>1. Kernel version is 2.6.6 or later (including 2.6.8.1 and 2.6.9-rc2).
>>2. Ext3's journalling mode is "data=journal".
>>
>>The problem was occurred since 2.6.5-bk1, which includes the patch
>>"[PATCH] ext3 fsync() and fdatasync() speedup".  We found that the
>>problem was solved by deleting the part of the patch which
>>modifies ext3_sync_file().  Maybe, i_state is not correctly set to
>>I_DIRTY when the related page cache is dirty (is it true?)
> 

I have a few qmail (about the heaviest fsync using mta software around) 
boxes that have their queues on ext3.

On a 2.6.7 kernel, these guys are guaranteed to crash within hours if I 
used data=journal for the fs on which the qmail queues are. I say this 
because I ran two of them with data=journal mode and they crashed once 
or more a day. Another one which stayed with ordered had no problems 
during the same period.

Going back to ordered meant that they ran stable for days (weeks now).

The only thing I could get from the logs is:

---------------------------

Aug 17 05:58:22 mta1-7 kernel: Assertion failure in 
__journal_drop_transaction() at fs/jbd/checkpoint.c:613: "transaction->t
_forget == NULL"
Aug 17 05:58:22 mta1-7 kernel: ------------[ cut here ]------------
Aug 17 05:58:22 mta1-7 kernel: kernel BUG at fs/jbd/checkpoint.c:613!
Aug 17 05:58:22 mta1-7 kernel: invalid operand: 0000 [#1]
Aug 17 05:58:22 mta1-7 kernel: SMP
Aug 17 05:58:22 mta1-7 kernel: Modules linked in: nfs lockd sunrpc e1000 
e100 mii usbcore
Aug 17 05:58:22 mta1-7 kernel: CPU:    0
Aug 17 05:58:22 mta1-7 kernel: EIP:    0060:[<c0193db0>]    Not tainted
Aug 17 05:58:22 mta1-7 kernel: EFLAGS: 00010202   (2.6.7)


WARNING: multiple messages have this Message-ID (diff)
From: Christopher Chan <cchan@outblaze.com>
To: Andrew Morton <akpm@osdl.org>
Cc: sct@redhat.com, linux-fsdevel@vger.kernel.org,
	ospfs@lab.ntt.co.jp, adilger@clusterfs.com,
	linux-kernel@vger.kernel.org, ext3-users@redhat.com
Subject: Re: [PATCH] BUG on fsync/fdatasync with Ext3 data=journal
Date: Fri, 17 Sep 2004 16:51:50 +0800	[thread overview]
Message-ID: <414AA5A6.3020907@outblaze.com> (raw)
In-Reply-To: <20040916145059.44a7e800.akpm@osdl.org>

Andrew Morton wrote:
> Seiji Kihara <kihara.seiji@lab.ntt.co.jp> wrote:
> 
>>We found that fsync and fdatasync syscalls sometimes don't sync
>>data in an ext3 file system under the following conditions.
>>
>>1. Kernel version is 2.6.6 or later (including 2.6.8.1 and 2.6.9-rc2).
>>2. Ext3's journalling mode is "data=journal".
>>
>>The problem was occurred since 2.6.5-bk1, which includes the patch
>>"[PATCH] ext3 fsync() and fdatasync() speedup".  We found that the
>>problem was solved by deleting the part of the patch which
>>modifies ext3_sync_file().  Maybe, i_state is not correctly set to
>>I_DIRTY when the related page cache is dirty (is it true?)
> 

I have a few qmail (about the heaviest fsync using mta software around) 
boxes that have their queues on ext3.

On a 2.6.7 kernel, these guys are guaranteed to crash within hours if I 
used data=journal for the fs on which the qmail queues are. I say this 
because I ran two of them with data=journal mode and they crashed once 
or more a day. Another one which stayed with ordered had no problems 
during the same period.

Going back to ordered meant that they ran stable for days (weeks now).

The only thing I could get from the logs is:

---------------------------

Aug 17 05:58:22 mta1-7 kernel: Assertion failure in 
__journal_drop_transaction() at fs/jbd/checkpoint.c:613: "transaction->t
_forget == NULL"
Aug 17 05:58:22 mta1-7 kernel: ------------[ cut here ]------------
Aug 17 05:58:22 mta1-7 kernel: kernel BUG at fs/jbd/checkpoint.c:613!
Aug 17 05:58:22 mta1-7 kernel: invalid operand: 0000 [#1]
Aug 17 05:58:22 mta1-7 kernel: SMP
Aug 17 05:58:22 mta1-7 kernel: Modules linked in: nfs lockd sunrpc e1000 
e100 mii usbcore
Aug 17 05:58:22 mta1-7 kernel: CPU:    0
Aug 17 05:58:22 mta1-7 kernel: EIP:    0060:[<c0193db0>]    Not tainted
Aug 17 05:58:22 mta1-7 kernel: EFLAGS: 00010202   (2.6.7)

  parent reply	other threads:[~2004-09-17  8:52 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-16 12:56 [PATCH] BUG on fsync/fdatasync with Ext3 data=journal Seiji Kihara
2004-09-16 21:50 ` Andrew Morton
2004-09-16 21:50   ` Andrew Morton
2004-09-17  1:27   ` Seiji Kihara
2004-09-17  1:27     ` Seiji Kihara
2004-09-17  8:51   ` Christopher Chan [this message]
2004-09-17  8:51     ` Christopher Chan
2004-09-18 20:47   ` Kenichi Okuyama

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=414AA5A6.3020907@outblaze.com \
    --to=cchan@outblaze.com \
    --cc=adilger@clusterfs.com \
    --cc=akpm@osdl.org \
    --cc=ext3-users@redhat.com \
    --cc=kihara.seiji@lab.ntt.co.jp \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ospfs@lab.ntt.co.jp \
    --cc=sct@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.