From: Vyacheslav Dubeyko <slava-yeENwD64cLxBDgjK7y7TUQ@public.gmane.org>
To: Piotr Szymaniak <szarpaj-TbOm9Ca2r9GrDJvtcaxF/A@public.gmane.org>
Cc: Ryusuke Konishi
<konishi.ryusuke-Zyj7fXuS5i5L9jVzuh4AOg@public.gmane.org>,
linux-nilfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: NILFS: corrupt root inode after Turbo Mode?
Date: Tue, 23 Oct 2012 10:31:53 +0400 [thread overview]
Message-ID: <1350973913.2041.25.camel@slavad-ubuntu> (raw)
In-Reply-To: <20121019101421.GT27763@wloczykij>
Hi,
On Fri, 2012-10-19 at 12:14 +0200, Piotr Szymaniak wrote:
> On Fri, Oct 19, 2012 at 10:43:11AM +0400, Vyacheslav Dubeyko wrote:
> > As I can see, both dumps contains blocks of ifile with inodes
> > description.
> >
> > I check previous e-mails and can see that maybe you dump not proper
> > block. Maybe it is my misspelling in some e-mail. It needed to dump
> > #734205 but as I can see you share dump of #743205 block. Firstly, to
> > check that block #734205 is really empty. Because if it is not empty
> > then the situation is different.
>
> It looks more like my misspelling when I asked about how should I make
> raw dump and after that it already was 743* instead of 734*. So my fault
> here.
>
> The dump looks like non-empty (attached), so I skipped this experiment
> below.
>
Sorry, for delay with answer. I was slightly busy.
So, currently, I have such picture. Your initial report was:
On Tue, 2012-10-09 at 00:25 +0200, Piotr Szymaniak wrote:
> dmesg shows:
> (...)
> [43893.754525] segctord starting. Construction interval = 300 seconds, CP frequency < 30 seconds
> [43893.760245] NILFS: corrupt root inode.
This error message generates only in one place by
nilfs_get_root_dentry() method in super.c
(http://lxr.free-electrons.com/source/fs/nilfs2/super.c#L903):
903 if (!S_ISDIR(inode->i_mode) || !inode->i_blocks || !inode->i_size) {
904 iput(inode);
905 printk(KERN_ERR "NILFS: corrupt root inode.\n");
906 ret = -EINVAL;
907 goto out;
908 }
So, only corruption of any of three fields of inode can be a reason for
such error message, from my understanding. But from the dump of #734205
block I can see such content of root inode (ino = 2):
00000100 01 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 |................|
00000110 08 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00 |................|
00000120 03 5a 62 02 03 5a 62 02 00 00 00 00 00 00 00 00 |.Zb..Zb.........|
00000130 ed 41 13 00 00 00 00 00 00 00 00 00 00 00 00 00 |.A..............|
00000140 8f aa 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
[00000100] i_blocks = 0x1
[00000108] i_size = 0x1000
[00000130] i_mode = 0x41ed (040755)
It means that inode's content is placed in one block and this inode
describes folder. So, the on-disk inode is correct and should be read
correctly during mounting. I have compared vanilla kernel code with
https://github.com/raspberrypi/linux and can't see any significant
difference. Currently, I think that unstable functioning of SD-card
controller in the Turbo mode can be the reason of this error message but
maybe I haven't the clear picture.
Did you try to mount this NILFS2 volume on host machine in normal mode?
Do you have such error message with this NILFS2 volume in another
technical environment?
With the best regards,
Vyacheslav Dubeyko.
--
To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2012-10-23 6:31 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-08 22:25 NILFS: corrupt root inode after Turbo Mode? Piotr Szymaniak
2012-10-09 7:29 ` Vyacheslav Dubeyko
2012-10-09 10:52 ` Piotr Szymaniak
2012-10-09 12:08 ` Vyacheslav Dubeyko
2012-10-09 13:58 ` Piotr Szymaniak
2012-10-09 16:24 ` Ryusuke Konishi
[not found] ` <20121010.012440.17932600.konishi.ryusuke-Zyj7fXuS5i5L9jVzuh4AOg@public.gmane.org>
2012-10-09 17:32 ` Vyacheslav Dubeyko
2012-10-10 7:39 ` Piotr Szymaniak
2012-10-10 10:43 ` Vyacheslav Dubeyko
2012-10-10 20:39 ` Piotr Szymaniak
2012-10-10 12:03 ` Vyacheslav Dubeyko
2012-10-10 22:03 ` Piotr Szymaniak
2012-10-11 6:50 ` Vyacheslav Dubeyko
2012-10-11 9:23 ` Piotr Szymaniak
2012-10-11 10:12 ` Vyacheslav Dubeyko
2012-10-11 18:03 ` Piotr Szymaniak
2012-10-12 7:10 ` Vyacheslav Dubeyko
2012-10-12 10:31 ` Piotr Szymaniak
2012-10-12 11:07 ` Vyacheslav Dubeyko
2012-10-12 11:40 ` Piotr Szymaniak
2012-10-14 14:55 ` Vyacheslav Dubeyko
[not found] ` <26EBDBC2-8938-41BC-8C0C-6F6F3A0FD1EC-yeENwD64cLxBDgjK7y7TUQ@public.gmane.org>
2012-10-14 20:47 ` Piotr Szymaniak
2012-10-15 5:58 ` Vyacheslav Dubeyko
2012-10-18 12:29 ` Vyacheslav Dubeyko
[not found] ` <20121014200836.GK27763@wloczykij>
2012-10-15 6:18 ` Vyacheslav Dubeyko
2012-10-18 20:15 ` Piotr Szymaniak
2012-10-19 6:43 ` Vyacheslav Dubeyko
2012-10-19 10:14 ` Piotr Szymaniak
2012-10-23 6:31 ` Vyacheslav Dubeyko [this message]
2012-10-23 8:41 ` Piotr Szymaniak
2012-10-23 9:26 ` Vyacheslav Dubeyko
2012-10-23 11:54 ` Piotr Szymaniak
2012-10-23 13:35 ` Vyacheslav Dubeyko
2012-10-24 7:36 ` Piotr Szymaniak
2012-10-25 12:13 ` Vyacheslav Dubeyko
2012-10-12 11:49 ` Christian Smith
[not found] ` <20121012114915.GE7823-Ng8wz+J301SNY5Lh21HnMTHS2PGA244I9dF7HbQ/qKg@public.gmane.org>
2012-10-12 12:28 ` Piotr Szymaniak
2012-10-12 20:56 ` Piotr Szymaniak
2012-10-09 11:53 ` Piotr Szymaniak
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=1350973913.2041.25.camel@slavad-ubuntu \
--to=slava-yeenwd64clxbdgjk7y7tuq@public.gmane.org \
--cc=konishi.ryusuke-Zyj7fXuS5i5L9jVzuh4AOg@public.gmane.org \
--cc=linux-nilfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=szarpaj-TbOm9Ca2r9GrDJvtcaxF/A@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).