From: Artem Bityutskiy <dedekind1@gmail.com>
To: Matthieu CASTET <matthieu.castet@parrot.com>
Cc: "linux-mtd@lists.infradead.org" <linux-mtd@lists.infradead.org>
Subject: Re: UBI/UBIFS interrupted write page handling
Date: Mon, 20 Sep 2010 21:14:38 +0300 [thread overview]
Message-ID: <1285006478.1762.1.camel@brekeke> (raw)
In-Reply-To: <1284054669.11335.21.camel@brekeke>
On Thu, 2010-09-09 at 20:51 +0300, Artem Bityutskiy wrote:
> > On one of our test, we are in case 3. Ubifs find a valid interrupt page
> > on mount and trust it. Latter the page become corrupted [1] because it
> > is unstable.
>
> OK, I see.
>
> > To identify a interrupted write page we :
> > - could use interrupted flags for static volume
> > - handle with care data move (copy flags) : if sqnum of the copy is the
> > biggest, we should ignore it/copy it.
> > - use upper layer for dynamic volume. For ubifs this could be a journal.
>
> Actually, for UBIFS things are rather simple. In UBIFS every writes go
> to the journal. Even GC writes to the journal. So when we are mounting
> after an unclean reboot, we can simply refresh the last LEBs of all
> journal heads using the 'ubi_leb_change()' call. This should handle all
> the three cases you describe.
>
> I do not think it is very difficult to do.
Matthieu, I can try to do to make some patches for you, but when you
come back on-line and start actively testing :-) I do want to help you
and improve UBIFS, but I'm not very motivated to do this unless this is
really needed. I think we have few other pending issues, and the ball is
on your side. :-)
--
Best Regards,
Artem Bityutskiy (Битюцкий Артём)
next prev parent reply other threads:[~2010-09-20 18:14 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-09 13:15 UBI/UBIFS interrupted write page handling Matthieu CASTET
2010-09-09 17:51 ` Artem Bityutskiy
2010-09-20 18:14 ` Artem Bityutskiy [this message]
2010-09-23 16:14 ` Matthieu CASTET
2010-09-23 18:35 ` Artem Bityutskiy
[not found] ` <F5C24FC168F95048BB6B9E0B13EB33152BA6F5304E@DIAMANT.xi-lite.lan>
2010-09-26 17:58 ` RE : " Artem Bityutskiy
2010-09-28 6:58 ` Artem Bityutskiy
2010-09-28 7:47 ` Matthieu CASTET
2010-09-28 8:02 ` Matthieu CASTET
2010-09-28 8:02 ` Artem Bityutskiy
2010-09-28 16:06 ` Matthieu CASTET
2010-09-28 18:34 ` Artem Bityutskiy
2010-10-04 13:12 ` Matthieu CASTET
2010-10-18 10:21 ` 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=1285006478.1762.1.camel@brekeke \
--to=dedekind1@gmail.com \
--cc=linux-mtd@lists.infradead.org \
--cc=matthieu.castet@parrot.com \
/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).