From: Maurizio Lombardi <m.lombardi85@gmail.com>
To: linux-mtd@lists.infradead.org
Subject: UBIFS corruption bug
Date: Fri, 1 Mar 2013 08:43:30 +0100 [thread overview]
Message-ID: <20130301074330.GA4075@gmail.com> (raw)
Hi all,
I need some help with a problem with the UBIFS on a custom MPC5125-based board.
First of all, we are running Linux 3.5.7 with a modified mpc5125_nfc driver;
I ran the mtd tests and all of them were successful with the exception of the
mtd_oobtest that failed.
[...]
mtd_oobtest: error: verify failed at 0x3da000
mtd_oobtest: error: verify failed at 0x3db000
mtd_oobtest: error: verify failed at 0x3dc000
[...]
By the way, I've read that the flash device probably does not support
writing oob-only and that I shouldn't worry about this test.
That said, Linux successfully boots from the ubifs-formatted NAND device and
apparently it works flawlessly.
The problem is that sometimes the filesystem gets corrupted and at mount the recovery
process fails to fix it. This is the error I get at boot time:
UBIFS: recovery needed
UBIFS error (pid 1): ubifs_recover_leb: corruptio 0
UBIFS error (pid 1): ubifs_scanned_corruption: corruption at LEB 404:376832
UBIFS error (pid 1): ubifs_scanned_corruption: first 8192 bytes from LEB 404:376832
UBIFS error (pid 1): ubifs_recover_leb: LEB 404 scanning failed
VFS: Cannot open root device "ubi0:rootfs" or unknown-block(0,0): error -117
Please append a correct "root=" boot option; here are the available partitions:
1f00 2048 mtdblock0 (driver?)
1f01 4161536 mtdblock1 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
I tried to debug the ubifs to find what is going wrong, I noticed that
the ubifs_recover_leb() function calls ubifs_scan_a_node(),
the latter returns SCANNED_A CORRUPT_NODE and subsequently the no_more_nodes() function
is called.
no_more_nodes() skips the corrupt node and does a check to verify that after
the corrupt node there is only empty space by calling is_empty(buf + skip, len - skip);
is_empty() returns false and the recover procedure fails.
Is there someone that could give me an advice on how to proceed to fix
the problem?
What could cause this problem? A bug in the mpc5125 nfc driver or a bug in ubi/ubifs ?
Thank you in advance,
Maurizio Lombardi
next reply other threads:[~2013-03-01 7:43 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-01 7:43 Maurizio Lombardi [this message]
2013-03-11 8:21 ` UBIFS corruption bug Artem Bityutskiy
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=20130301074330.GA4075@gmail.com \
--to=m.lombardi85@gmail.com \
--cc=linux-mtd@lists.infradead.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