From: "Theodore Ts'o" <tytso@mit.edu>
To: Vijay Chidambaram <vvijay03@gmail.com>
Cc: Amir Goldstein <amir73il@gmail.com>,
Ashlie Martinez <ashmrtn@utexas.edu>,
Eryu Guan <eguan@redhat.com>, Ext4 <linux-ext4@vger.kernel.org>,
Josef Bacik <jbacik@fb.com>, Xiao Yang <yangx.jy@cn.fujitsu.com>,
fstests <fstests@vger.kernel.org>
Subject: Re: [PATCH] ext4: fix interaction between i_size, fallocate, and delalloc after a crash
Date: Tue, 17 Oct 2017 10:41:17 -0400 [thread overview]
Message-ID: <20171017144117.ispjgvwrespix5z3@thunk.org> (raw)
In-Reply-To: <CAPaz=E+jFuOmRk8+EmVhNawwogNzW3VkciFrCc0Fk23OfGbwuA@mail.gmail.com>
On Tue, Oct 17, 2017 at 12:43:20AM +0000, Vijay Chidambaram wrote:
> It does expand our already-large search space, but our first order of
> business is making sure CrashMonkey can reproduce every crash-consistency
> bug reported in recent times (mostly by Amir :) ). So for now we were just
> analyzing the bug and trying to understand it, but it looks like the
> post-recovery image is not very useful for this.
Right, the post-recovery (after the journal replayed) is not very
useful. Unfortunately, the pre-recovery (after the power cut, but
before the journal replay) I suspect won't be terribly interesting
either. It will show that the corruption is baked into the journal
--- which is to say, the problem wasn't in whether the calls to the
jbd2 layer were correct --- but rather, that one of the file system
mutations in a specific jbd2 handle's "micro-transaction" left the
file system is an inconsistent state.
Not a terrible inconsistency, and it would be quickly papered over in
a follow-up handle --- but one where if the handle which left the file
system in an inconsistent state, and the handle which cleaned it up
were in different transactions, and the power cut happened after the
first transaction, the file system be left in a state where e2fsck
would complain.
So if you have the I/O trace where the handles in question were
assigned to the right (wrong) set of transactions, then yes, you'll
see the problem, just as the xfstest will see the problem.
But if you want to improve the CrashMonkey's search of the problem
space, it will require higher-level logging, because this is really a
different sort of bug. CrashMonkey will find (a) bugs in jbd2, and
(b) bugs in how the jbd2 layer is called. This bug is really a bug in
ext4 implementation, because it is in *how* the file system was
mutated that temporarily left it in an inconsistent state, and that's
a different thing from (a) or (b). Which is great --- it's arguably
additional research work that can be segregated into a different
"Minimum Publishable Unit". :-)
- Ted
next prev parent reply other threads:[~2017-10-17 14:41 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-27 10:44 [RFC][PATCH] fstest: regression test for ext4 crash consistency bug Amir Goldstein
2017-09-25 9:49 ` Xiao Yang
2017-09-25 10:53 ` Amir Goldstein
2017-09-26 10:45 ` Xiao Yang
2017-09-26 11:48 ` Amir Goldstein
2017-09-30 14:15 ` Ashlie Martinez
2017-10-05 7:27 ` Xiao Yang
2017-10-05 15:04 ` Ashlie Martinez
2017-10-05 19:10 ` Amir Goldstein
2017-10-06 0:34 ` Ashlie Martinez
2017-10-07 3:29 ` [PATCH] ext4: fix interaction between i_size, fallocate, and delalloc after a crash Theodore Ts'o
2017-10-07 5:54 ` Amir Goldstein
2017-10-07 18:32 ` Theodore Ts'o
2017-10-09 0:37 ` Ashlie Martinez
2017-10-11 11:11 ` Xiao Yang
2017-10-11 13:17 ` Ashlie Martinez
2017-10-11 13:34 ` Amir Goldstein
2017-10-16 19:32 ` Ashlie Martinez
2017-10-16 21:11 ` Amir Goldstein
2017-10-17 0:09 ` Theodore Ts'o
2017-10-17 1:02 ` Vijay Chidambaram
[not found] ` <CAPaz=E+jFuOmRk8+EmVhNawwogNzW3VkciFrCc0Fk23OfGbwuA@mail.gmail.com>
2017-10-17 7:15 ` Amir Goldstein
2017-10-17 14:41 ` Theodore Ts'o [this message]
2017-10-17 23:16 ` Vijay Chidambaram
2017-10-12 14:38 ` Jan Kara
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=20171017144117.ispjgvwrespix5z3@thunk.org \
--to=tytso@mit.edu \
--cc=amir73il@gmail.com \
--cc=ashmrtn@utexas.edu \
--cc=eguan@redhat.com \
--cc=fstests@vger.kernel.org \
--cc=jbacik@fb.com \
--cc=linux-ext4@vger.kernel.org \
--cc=vvijay03@gmail.com \
--cc=yangx.jy@cn.fujitsu.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox