From: bugzilla-daemon@bugzilla.kernel.org
To: linux-ext4@vger.kernel.org
Subject: [Bug 14354] Bad corruption with 2.6.32-rc1 and upwards
Date: Fri, 23 Oct 2009 07:45:03 GMT [thread overview]
Message-ID: <200910230745.n9N7j3R5026089@demeter.kernel.org> (raw)
In-Reply-To: <bug-14354-13602@http.bugzilla.kernel.org/>
http://bugzilla.kernel.org/show_bug.cgi?id=14354
--- Comment #109 from Theodore Tso <tytso@mit.edu> 2009-10-23 07:44:59 ---
James,
>I got some corruption, but not ro changes.
When you say corruption, you mean "file data corruption", right? You said it
was a database; was it a database that uses fsync() --- or put another way, was
the database (could you tell us what database it was) one that claims to have
ACID properties?
>Today, however, running -rc5 the box simply rebooted without notice. and I got
>a number of log entries after the reboot... I stut down enough to
>unmount /var and ran e2fsck. That generated a *slew* of errors, mostly
>complaining about multiple files claiming the same blocks. A second e2fsck
>right after (with -f) showed no further errors. I now have about 70 megs
>of data in lost+found.
Hmm, this sounds like the patch didn't actually help. And am I right that you
never saw the "filesystem is readonly" plus a kernel stack dump in your system
logs or in dmesg? The other thing which is interesting is that this happened
on a non-root filesystem (/var), which means that journal wasn't replayed when
the root filesystem was mounted read-only, but the journal was replayed by
e2fsck.
Another question --- did you have your file system configured with "tune2fs -c
1", was described in comment #59? One worry I have is that in fact the file
system may have been corrupted earlier, and it simply wasn't noticed right
away. In the case of fsck complaining about blocks claimed by multiple
inodes, there are two causes of this. One is that one or more blocks in the
inode table get written to the wrong place, overwriting another block(s) in the
inode table. In that case, the pattern of corruption tends to be that since
inode N is written on top of inode N+m*16 or N+m*32 (depending on whether you
are using 128-byte or 256-byte sized inodes) and inode N+1 is written on top of
inode (N+1)+(m+16) or (N+1)+(m*32). it's quite easy to see this pattern from
the e2fsck transcript.
The second case is one where the block allocation bitmap gets corrupted, such
that some blocks which are in use are marked as free, and *then* the file
system is remounted and files are written to the file system, such that the
blocks are reallocated for new files. In that case, the pattern of the
multiply-claimed blocks is random, and it's likely that you will see one or
more inodes where the inode is sharing blocks with more than one inodes, and
where there is no relationship between the inode numbers of inodes that are
using a particular block.
So far, the fsck transcripts with pass1b that people have submitted to me tend
to be of the second form --- which is why I recommend the use of "tune2fs -c
1"; if the file system corruptions causing data loss are caused by corrupted
block allocation blocks, then checking the filesystems after every single boot
means that you might see pass 5 failures, but not the pass1b failures that are
associated with data loss.
Obviously, we don't want to run with "tune2fs -c 1" indefinitely, since that
obviously slows down boot times, but for people who are interested in helping
us debug this issue, it should allow them to avoid data loss and also help us
identify *when* the file system had gotten corrupted (i.e., during the previous
boot session), and hopefully allow us to find the root cause to this problem.
--
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
next prev parent reply other threads:[~2009-10-23 7:44 UTC|newest]
Thread overview: 218+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-09 15:42 [Bug 14354] New: Bad corruption with 2.6.32-rc1 and upwards bugzilla-daemon
2009-10-09 15:51 ` [Bug 14354] " bugzilla-daemon
2009-10-09 16:06 ` bugzilla-daemon
2009-10-09 16:44 ` bugzilla-daemon
2009-10-09 16:50 ` bugzilla-daemon
2009-10-09 22:35 ` bugzilla-daemon
2009-10-10 7:32 ` bugzilla-daemon
2009-10-10 16:48 ` bugzilla-daemon
2009-10-10 16:50 ` bugzilla-daemon
2009-10-10 17:00 ` bugzilla-daemon
2009-10-10 17:04 ` bugzilla-daemon
2009-10-10 19:54 ` bugzilla-daemon
2009-10-11 1:26 ` bugzilla-daemon
2009-10-11 2:03 ` bugzilla-daemon
2009-10-11 12:31 ` bugzilla-daemon
2009-10-11 19:07 ` bugzilla-daemon
2009-10-11 21:45 ` bugzilla-daemon
2009-10-11 23:01 ` bugzilla-daemon
2009-10-12 0:02 ` bugzilla-daemon
2009-10-12 2:18 ` bugzilla-daemon
2009-10-12 2:24 ` bugzilla-daemon
2009-10-12 7:54 ` bugzilla-daemon
2009-10-12 7:56 ` bugzilla-daemon
2009-10-12 7:57 ` bugzilla-daemon
2009-10-12 15:24 ` bugzilla-daemon
2009-10-12 15:27 ` [Bug 14354] New: " Aneesh Kumar K.V
2009-10-12 15:27 ` [Bug 14354] " bugzilla-daemon
2009-10-12 18:15 ` bugzilla-daemon
2009-10-12 18:29 ` bugzilla-daemon
2009-10-12 21:41 ` bugzilla-daemon
2009-10-12 21:50 ` bugzilla-daemon
2009-10-13 0:18 ` bugzilla-daemon
2009-10-13 8:00 ` bugzilla-daemon
2009-10-13 8:02 ` bugzilla-daemon
2009-10-13 8:47 ` bugzilla-daemon
2009-10-13 13:16 ` bugzilla-daemon
2009-10-13 14:50 ` bugzilla-daemon
2009-10-13 15:12 ` bugzilla-daemon
2009-10-13 20:17 ` bugzilla-daemon
2009-10-13 20:28 ` bugzilla-daemon
2009-10-13 20:55 ` bugzilla-daemon
2009-10-13 21:10 ` bugzilla-daemon
2009-10-13 22:02 ` bugzilla-daemon
2009-10-14 0:45 ` bugzilla-daemon
2009-10-14 0:48 ` bugzilla-daemon
2009-10-14 2:31 ` bugzilla-daemon
2009-10-14 3:17 ` bugzilla-daemon
2009-10-14 3:26 ` bugzilla-daemon
2009-10-14 9:31 ` bugzilla-daemon
2009-10-14 13:21 ` bugzilla-daemon
2009-10-14 13:36 ` bugzilla-daemon
2009-10-14 22:08 ` bugzilla-daemon
2009-10-14 22:09 ` bugzilla-daemon
2009-10-14 22:11 ` bugzilla-daemon
2009-10-15 4:24 ` bugzilla-daemon
2009-10-15 7:11 ` bugzilla-daemon
2009-10-15 15:07 ` bugzilla-daemon
2009-10-15 17:58 ` bugzilla-daemon
2009-10-15 18:30 ` bugzilla-daemon
2009-10-15 19:10 ` bugzilla-daemon
2009-10-15 23:40 ` bugzilla-daemon
2009-10-16 9:16 ` bugzilla-daemon
2009-10-16 10:48 ` bugzilla-daemon
2009-10-16 14:13 ` bugzilla-daemon
2009-10-16 14:41 ` bugzilla-daemon
2009-10-16 15:27 ` bugzilla-daemon
2009-10-16 19:14 ` bugzilla-daemon
2009-10-16 19:39 ` bugzilla-daemon
2009-10-16 20:05 ` bugzilla-daemon
2009-10-16 20:07 ` bugzilla-daemon
2009-10-16 22:24 ` bugzilla-daemon
2009-10-16 23:02 ` bugzilla-daemon
2009-10-17 2:27 ` bugzilla-daemon
2009-10-17 6:01 ` bugzilla-daemon
2009-10-17 6:03 ` bugzilla-daemon
2009-10-17 6:12 ` bugzilla-daemon
2009-10-17 6:38 ` bugzilla-daemon
2009-10-17 6:38 ` bugzilla-daemon
2009-10-17 6:43 ` bugzilla-daemon
2009-10-17 8:18 ` bugzilla-daemon
2009-10-17 10:51 ` bugzilla-daemon
2009-10-17 11:37 ` bugzilla-daemon
2009-10-17 14:37 ` bugzilla-daemon
2009-10-17 14:40 ` bugzilla-daemon
2009-10-17 15:23 ` bugzilla-daemon
2009-10-17 17:46 ` bugzilla-daemon
2009-10-17 19:57 ` bugzilla-daemon
2009-10-17 20:54 ` bugzilla-daemon
2009-10-17 20:59 ` bugzilla-daemon
2009-10-18 0:02 ` bugzilla-daemon
2009-10-18 0:03 ` bugzilla-daemon
2009-10-18 0:04 ` bugzilla-daemon
2009-10-18 0:04 ` bugzilla-daemon
2009-10-18 0:05 ` bugzilla-daemon
2009-10-18 0:05 ` bugzilla-daemon
2009-10-18 0:07 ` bugzilla-daemon
2009-10-18 0:07 ` bugzilla-daemon
2009-10-18 0:07 ` bugzilla-daemon
2009-10-18 7:44 ` bugzilla-daemon
2009-10-18 10:06 ` bugzilla-daemon
2009-10-18 11:23 ` bugzilla-daemon
2009-10-18 11:25 ` bugzilla-daemon
2009-10-18 11:57 ` bugzilla-daemon
2009-10-19 21:07 ` bugzilla-daemon
2009-10-19 21:08 ` bugzilla-daemon
2009-10-20 17:28 ` bugzilla-daemon
2009-10-20 20:21 ` bugzilla-daemon
2009-10-21 0:53 ` bugzilla-daemon
2009-10-21 0:57 ` bugzilla-daemon
2009-10-21 5:55 ` bugzilla-daemon
2009-10-21 9:05 ` bugzilla-daemon
2009-10-21 9:06 ` bugzilla-daemon
2009-10-22 18:43 ` bugzilla-daemon
2009-10-22 19:06 ` bugzilla-daemon
2009-10-22 19:22 ` bugzilla-daemon
2009-10-22 19:29 ` bugzilla-daemon
2009-10-22 19:37 ` bugzilla-daemon
2009-10-22 21:58 ` bugzilla-daemon
2009-10-22 22:24 ` bugzilla-daemon
2009-10-23 4:30 ` bugzilla-daemon
2009-10-23 7:45 ` bugzilla-daemon [this message]
2009-10-24 17:04 ` bugzilla-daemon
2009-10-24 17:05 ` bugzilla-daemon
2009-10-25 8:58 ` bugzilla-daemon
2009-10-25 13:59 ` bugzilla-daemon
2009-10-25 14:01 ` bugzilla-daemon
2009-10-25 19:04 ` bugzilla-daemon
2009-10-26 13:46 ` bugzilla-daemon
2009-10-26 15:42 ` bugzilla-daemon
2009-10-26 16:17 ` bugzilla-daemon
2009-10-26 19:13 ` bugzilla-daemon
2009-10-26 21:46 ` bugzilla-daemon
2009-10-26 22:40 ` bugzilla-daemon
2009-10-27 6:54 ` Aneesh Kumar K.V
2009-10-27 6:39 ` bugzilla-daemon
2009-10-27 10:00 ` bugzilla-daemon
2009-10-27 10:38 ` bugzilla-daemon
2009-10-27 11:03 ` Aneesh Kumar K.V
2009-10-27 10:48 ` bugzilla-daemon
2009-10-27 11:47 ` bugzilla-daemon
2009-10-27 12:41 ` bugzilla-daemon
2009-10-27 13:02 ` bugzilla-daemon
2009-10-27 18:50 ` bugzilla-daemon
2009-10-27 19:00 ` bugzilla-daemon
2009-10-27 20:00 ` bugzilla-daemon
2009-10-27 20:31 ` bugzilla-daemon
2009-10-27 20:37 ` bugzilla-daemon
2009-10-27 21:23 ` bugzilla-daemon
2009-10-27 21:42 ` bugzilla-daemon
2009-10-27 22:04 ` bugzilla-daemon
2009-10-27 23:38 ` bugzilla-daemon
2009-10-28 6:44 ` bugzilla-daemon
2009-10-28 7:20 ` bugzilla-daemon
2009-10-29 16:23 ` bugzilla-daemon
2009-10-29 16:47 ` bugzilla-daemon
2009-10-29 17:34 ` bugzilla-daemon
2009-10-29 20:11 ` bugzilla-daemon
2009-10-29 21:25 ` bugzilla-daemon
2009-10-29 21:39 ` bugzilla-daemon
2009-10-29 21:42 ` bugzilla-daemon
2009-10-29 21:52 ` bugzilla-daemon
2009-10-29 21:55 ` bugzilla-daemon
2009-10-29 22:20 ` bugzilla-daemon
2009-10-29 22:23 ` bugzilla-daemon
2009-10-30 8:16 ` bugzilla-daemon
2009-10-30 8:22 ` bugzilla-daemon
2009-10-30 10:26 ` bugzilla-daemon
2009-10-30 10:42 ` bugzilla-daemon
2009-10-30 13:54 ` bugzilla-daemon
2009-10-30 16:27 ` bugzilla-daemon
2009-10-30 18:05 ` bugzilla-daemon
2009-10-30 19:17 ` bugzilla-daemon
2009-10-30 19:22 ` bugzilla-daemon
2009-10-30 19:56 ` bugzilla-daemon
2009-10-31 9:15 ` bugzilla-daemon
2009-10-31 15:26 ` bugzilla-daemon
2009-10-31 16:16 ` bugzilla-daemon
2009-10-31 19:15 ` bugzilla-daemon
2009-10-31 19:56 ` bugzilla-daemon
2009-11-02 4:07 ` bugzilla-daemon
2009-11-02 17:05 ` bugzilla-daemon
2009-11-02 23:11 ` bugzilla-daemon
2009-11-03 1:07 ` bugzilla-daemon
2009-11-03 9:33 ` bugzilla-daemon
2009-11-03 13:37 ` bugzilla-daemon
2009-11-03 13:43 ` bugzilla-daemon
2009-11-03 13:58 ` bugzilla-daemon
2009-11-03 14:32 ` bugzilla-daemon
2009-11-03 23:39 ` bugzilla-daemon
2009-11-03 23:43 ` bugzilla-daemon
2009-11-04 3:33 ` bugzilla-daemon
2009-11-06 20:49 ` bugzilla-daemon
2009-11-06 22:07 ` bugzilla-daemon
2009-11-08 18:12 ` Christoph Hellwig
2009-11-08 19:12 ` Theodore Tso
2009-11-06 22:15 ` bugzilla-daemon
2009-11-06 22:26 ` bugzilla-daemon
2009-11-08 18:12 ` bugzilla-daemon
2009-11-08 19:12 ` bugzilla-daemon
2009-11-08 21:05 ` bugzilla-daemon
2009-11-08 21:12 ` Theodore Tso
2009-11-08 21:12 ` bugzilla-daemon
2009-11-09 14:54 ` bugzilla-daemon
2009-11-16 22:30 ` bugzilla-daemon
2009-11-16 22:30 ` bugzilla-daemon
2009-11-17 22:20 ` bugzilla-daemon
2009-11-17 22:21 ` bugzilla-daemon
2009-11-17 22:22 ` bugzilla-daemon
-- strict thread matches above, loose matches on Subject: below --
2009-10-11 22:07 2.6.32-rc4: Reported regressions from 2.6.31 Rafael J. Wysocki
2009-10-11 22:22 ` [Bug #14354] Bad corruption with 2.6.32-rc1 and upwards Rafael J. Wysocki
2009-10-26 18:45 2.6.32-rc5-git3: Reported regressions from 2.6.31 Rafael J. Wysocki
2009-10-26 18:55 ` [Bug #14354] Bad corruption with 2.6.32-rc1 and upwards Rafael J. Wysocki
2009-10-26 18:55 ` Rafael J. Wysocki
2009-11-16 22:33 2.6.32-rc7-git1: Reported regressions from 2.6.31 Rafael J. Wysocki
2009-11-16 22:37 ` [Bug #14354] Bad corruption with 2.6.32-rc1 and upwards Rafael J. Wysocki
2009-11-17 2:02 ` Theodore Tso
2009-11-17 2:02 ` Theodore Tso
[not found] ` <20091117020202.GA23066-3s7WtUTddSA@public.gmane.org>
2009-11-17 22:23 ` Rafael J. Wysocki
2009-11-17 22:23 ` Rafael J. Wysocki
[not found] ` <200911172323.11224.rjw-KKrjLPT3xs0@public.gmane.org>
2009-11-18 0:11 ` tytso-3s7WtUTddSA
2009-11-18 0:11 ` tytso
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=200910230745.n9N7j3R5026089@demeter.kernel.org \
--to=bugzilla-daemon@bugzilla.kernel.org \
--cc=linux-ext4@vger.kernel.org \
/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.