From: Theodore Tso <tytso@mit.edu>
To: "J.D. Bakker" <jdb@lartmaker.nl>
Cc: linux-ext4@vger.kernel.org
Subject: Re: Once more: Recovering a damaged ext4 fs?
Date: Sat, 28 Mar 2009 00:06:57 -0400 [thread overview]
Message-ID: <20090328040657.GB2155@mit.edu> (raw)
In-Reply-To: <p0624058ec5f30b501efb@[130.161.115.44]>
This patch *might* solve your problem. I can't be sure because I
haven't been able to reproduce the soft lockup problem when rm'ing a
file yet. But if it's happening fairly often, it might be worth a
try; it definitely fixes a real bug in ext4 --- I'm just not sure it's
*your* bug. :-)
- Ted
commit 73cda61b58a060b6691791a44c01c16155617451
Author: Theodore Ts'o <tytso@mit.edu>
Date: Fri Mar 27 19:43:21 2009 -0400
ext4: fix locking typo in mballoc which could cause soft lockup hangs
Smatch (http://repo.or.cz/w/smatch.git/) complains about the locking in
ext4_mb_add_n_trim() from fs/ext4/mballoc.c
4438 list_for_each_entry_rcu(tmp_pa, &lg->lg_prealloc_list[order],
4439 pa_inode_list) {
4440 spin_lock(&tmp_pa->pa_lock);
4441 if (tmp_pa->pa_deleted) {
4442 spin_unlock(&pa->pa_lock);
4443 continue;
4444 }
Brown paper bag time...
Reported-by: Dan Carpenter <error27@gmail.com>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@gmail.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: stable@kernel.org
diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c
index 4f2f476..12d1081 100644
--- a/fs/ext4/mballoc.c
+++ b/fs/ext4/mballoc.c
@@ -4389,7 +4389,7 @@ static void ext4_mb_add_n_trim(struct ext4_allocation_context *ac)
pa_inode_list) {
spin_lock(&tmp_pa->pa_lock);
if (tmp_pa->pa_deleted) {
- spin_unlock(&pa->pa_lock);
+ spin_unlock(&tmp_pa->pa_lock);
continue;
}
if (!added && pa->pa_free < tmp_pa->pa_free) {
next prev parent reply other threads:[~2009-03-28 4:07 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-27 20:41 Once more: Recovering a damaged ext4 fs? J.D. Bakker
2009-03-27 22:46 ` Theodore Tso
2009-03-27 23:47 ` J.D. Bakker
2009-03-28 4:06 ` Theodore Tso [this message]
2009-03-28 12:30 ` Theodore Tso
2009-03-28 12:53 ` J.D. Bakker
2009-03-28 13:09 ` Theodore Tso
2009-03-29 22:01 ` J.D. Bakker
2009-03-31 12:42 ` Theodore Tso
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=20090328040657.GB2155@mit.edu \
--to=tytso@mit.edu \
--cc=jdb@lartmaker.nl \
--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.