From: Ryusuke Konishi <ryusuke-sG5X7nlA6pw@public.gmane.org>
To: users-JrjvKiOkagjYtjvyW6yDsg@public.gmane.org,
jeromepoulin-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Cc: Eric A <eric225125-/E1597aS9LQAvxtiuMwx3w@public.gmane.org>
Subject: Re: segctord problem
Date: Sun, 30 Aug 2009 05:50:14 +0900 (JST) [thread overview]
Message-ID: <20090830.055014.88471834.ryusuke@osrg.net> (raw)
In-Reply-To: <debc30fc0908290948g3ee60e81u1f024b3031e36f36-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
Hi!
On Sat, 29 Aug 2009 12:48:03 -0400, Jérôme Poulin wrote:
> I just found out there were 3 bad sectors on my hard drive, however
> I just changed it last night, it copied over with only a missing
> 4096 bytes. NILFS was the only filesystem who experienced problem
> with those bad sectors, thanks to it's log-like structure which
> seems to be able to discover to kind of errors. It woulnd't mount
> yesterday, I copied it over, then started it this morning thinking
> the segctord problem could have been caused by that, however it is
> not, I experienced it again this morning, it started then ended
> while I was eating, so I could capture the log from start to end
> this time, so this could give you a hint on what caused it, and it
> seems me and Eric are using a 64 bits kernel too.
>
> Summary of log:
> Aug 28 21:03: I started my computer and it wouldn't start X, looked at the
> log, it was showing I wasn't having a /home.
> Rebooted with init=3D/bin/bash and found out disk had bad sectors, copied o=
ver a new HD.
> Aug 29 10:41 Rebooted with new disk, everything's okay.
> Aud 29 12:08 WARNING: at kernel/sched.c:4890 sub_preempt_count+0x95/0xa0(),
start of errors.
> Aug 29 12:29 End of errors.
Thank you for sending me the log.
I've found a bug which seems like the cause of this problem. The
following patch is the bugfix.
Could you test if the patch makes a difference ?
Thanks,
Ryusuke Konishi
diff --git a/fs/nilfs2/btnode.c b/fs/nilfs2/btnode.c
index 7e0b61b..c668bca 100644
--- a/fs/nilfs2/btnode.c
+++ b/fs/nilfs2/btnode.c
@@ -209,6 +209,7 @@ int nilfs_btnode_prepare_change_key(struct address_space *btnc,
* We cannot call radix_tree_preload for the kernels older
* than 2.6.23, because it is not exported for modules.
*/
+retry:
err = radix_tree_preload(GFP_NOFS & ~__GFP_HIGHMEM);
if (err)
goto failed_unlock;
@@ -219,7 +220,6 @@ int nilfs_btnode_prepare_change_key(struct address_space *btnc,
(unsigned long long)oldkey,
(unsigned long long)newkey);
-retry:
spin_lock_irq(&btnc->tree_lock);
err = radix_tree_insert(&btnc->page_tree, newkey, obh->b_page);
spin_unlock_irq(&btnc->tree_lock);
next prev parent reply other threads:[~2009-08-29 20:50 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-11 22:06 segctord problem Eric A
[not found] ` <949415.6494.qm-CSBWnlGNI82B9c0Qi4KiSlZ8N9CAUha/QQ4Iyu8u01E@public.gmane.org>
2009-08-12 0:46 ` Jiro SEKIBA
[not found] ` <877hx9g8p6.wl%jir-27yqGEOhnJbQT0dZR+AlfA@public.gmane.org>
2009-08-12 1:28 ` Eric A
[not found] ` <229792.17907.qm-f9L/0AEUy02B9c0Qi4KiSlZ8N9CAUha/QQ4Iyu8u01E@public.gmane.org>
2009-08-12 3:28 ` Ryusuke Konishi
[not found] ` <20090812.122845.28893666.ryusuke-sG5X7nlA6pw@public.gmane.org>
2009-08-12 4:12 ` Eric A
2009-08-12 17:30 ` Eric A
[not found] ` <875433.79601.qm-GGnPTbcu0TGB9c0Qi4KiSlZ8N9CAUha/QQ4Iyu8u01E@public.gmane.org>
2009-08-13 7:10 ` Ryusuke Konishi
[not found] ` <20090813.161004.39219573.ryusuke-sG5X7nlA6pw@public.gmane.org>
2009-08-27 15:25 ` Jérôme Poulin
[not found] ` <debc30fc0908270825v747c1734xa59126623cfd5b05-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-08-27 21:39 ` Jérôme Poulin
[not found] ` <debc30fc0908271439x63d16227mbf5589c8db455b1e-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-08-29 16:48 ` Jérôme Poulin
[not found] ` <debc30fc0908290948g3ee60e81u1f024b3031e36f36-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-08-29 20:50 ` Ryusuke Konishi [this message]
[not found] ` <debc30fc0908291424l1b403bfcy9940b32fdda49b65@mail.gmail.com>
[not found] ` <debc30fc0908291424l1b403bfcy9940b32fdda49b65-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-08-30 21:30 ` Jérôme Poulin
[not found] ` <debc30fc0908301430x3b4b6138qab5928389be7ea60-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-08-31 6:11 ` Ryusuke Konishi
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=20090830.055014.88471834.ryusuke@osrg.net \
--to=ryusuke-sg5x7nla6pw@public.gmane.org \
--cc=eric225125-/E1597aS9LQAvxtiuMwx3w@public.gmane.org \
--cc=jeromepoulin-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=users-JrjvKiOkagjYtjvyW6yDsg@public.gmane.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.