From: Artem Bityutskiy <dedekind1@gmail.com>
To: Ivan Djelic <ivan.djelic@parrot.com>
Cc: "linux-mtd@lists.infradead.org" <linux-mtd@lists.infradead.org>,
Daniel Kuhn <cheeef@swissonline.ch>
Subject: Re: UBIFS recovery fails
Date: Wed, 19 Oct 2011 18:15:15 +0300 [thread overview]
Message-ID: <1319037322.25389.111.camel@sauron> (raw)
In-Reply-To: <20111018082955.GB5997@parrot.com>
[-- Attachment #1: Type: text/plain, Size: 2425 bytes --]
On Tue, 2011-10-18 at 10:29 +0200, Ivan Djelic wrote:
> That's interesting... Do you have more details or any data on those eMMC
> power-cut failures ?
Not much. We were testing eMMC and were trying to make sure that if we
sync the data, and then have a power cut, we never lose the data which
was synced. We have a test which worked directly with the block device,
so no file-system involved. And in some cases eMMC had sectors which
were reported to be already written corrupted. The vendor later said
that yes, there is a FW bug, and promised to fix it in the next
revision.
eMMC FW is written by humans as well :-)
> I plan to be working soon (December) on UBIFS robustness issues with unstable
> modern SLCs; besides using nandsim to simulate SLC (and maybe MLC) issues,
> I also have real hardware with a power-cutting framework ready for testing.
I suggest you to improve the UBIFS power cut emulation functions and
make them emulate unstable bits, and then use integck which is already
able to handle emulated power cuts. This will allow you to
1. Test quickly
2. Continue the half-done work
3. Work with nicer code-base than ugly nandsim
4. Make it possible to emulate unstable bits in interesting places like
TNC, LPT, orphans area, etc. Otherwise most of the failures will be
emulated in data area.
Similarly, something like that should be done in UBI level which will
emulate power cuts _only_ when writing UBI-specific stuff (e.g., the
headers).
Something on driver level can also be done later.
I know you are driver guy and it is more natural for you to start from
driver, but I suggest starting from UBIFS and fix 90% of the issues
there, then go down. This way you will also isolate non-UBIFS specific
issues.
Anyway, we should start with _documenting_:
1. What are unstable bits
2. Which work UBIFS/UBI/MTD needs to handle that.
3. What are MLC-specific issues
4. What would have to be done to handle them.
I have ideas about the paired pages in MLC.
But the thing also is that the whole stack is complex and big and
has a lot of states (like any FS), so it is easy to miss something and
you never know the complete list until you actually start stressing the
stack.
But let's document what we know at the moment. Then people who are
interested to have that fixed can start approaching that.
--
Best Regards,
Artem Bityutskiy
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 490 bytes --]
next prev parent reply other threads:[~2011-10-19 15:15 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-17 13:29 UBIFS recovery fails Daniel Kuhn
2011-10-17 20:17 ` Artem Bityutskiy
2011-10-18 8:11 ` Ricard Wanderlof
2011-10-18 8:42 ` Ivan Djelic
2011-10-20 16:37 ` Artem Bityutskiy
2011-10-20 16:36 ` Artem Bityutskiy
2011-10-18 8:29 ` Ivan Djelic
2011-10-19 15:15 ` Artem Bityutskiy [this message]
2011-10-19 17:27 ` Ivan Djelic
2011-10-18 12:47 ` Jean-Sébastien Gagnon
2011-10-18 14:54 ` Ivan Djelic
2011-10-18 15:10 ` Jean-Sébastien Gagnon
2011-10-18 15:32 ` Ivan Djelic
2011-10-18 16:05 ` Jean-Sébastien Gagnon
2011-10-19 6:50 ` Ricard Wanderlof
2011-10-19 10:22 ` Ivan Djelic
2011-10-19 12:17 ` Atlant Schmidt
2011-10-19 12:52 ` Ricard Wanderlof
2011-10-19 13:30 ` Atlant Schmidt
2011-10-20 16:43 ` Artem Bityutskiy
2011-10-24 7:00 ` Ricard Wanderlof
2011-10-29 19:43 ` Artem Bityutskiy
2011-10-20 14:14 ` Artem Bityutskiy
2011-10-18 15:29 ` Daniel Kuhn
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=1319037322.25389.111.camel@sauron \
--to=dedekind1@gmail.com \
--cc=cheeef@swissonline.ch \
--cc=ivan.djelic@parrot.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