UBIFS orphans and ro-mounts
Richard Weinberger
richard at sigma-star.at
Wed Jul 13 05:55:45 PDT 2016
Artem,
Am 13.07.2016 um 14:48 schrieb Artem Bityutskiy:
> On Wed, 2016-07-13 at 14:29 +0200, Richard Weinberger wrote:
>> Artem,
>>
>> I wonder why UBIFS processes orphan inodes also when mounting read-
>> only.
>
> Well, people expect UBIFS to report correct free/used space even if it
> is R/O, right? :-)
Well, I'd say people will understand the on ro-mode free is less than
expected since UBIFS had no chance to garbage collect...
But I agree that changing the current behavior will confuse users. :-(
>> Depending on the workload before a power cut this can take a few
>> seconds
>> and since we mount read-only the updated TNC will not written back to
>> flash,
>> so upon next mount the time is again wasted.
>
> I see the problem, but I do not agree with word "wasted", because this
> is like doing it for nothing, while UBIFS is doing this for a reason.
> So I'd rather used word "spent". :-)
;-)
>> This hurts boot performance a lot on systems where u-boot loads the
>> kernel
>> from UBIFS.
>> u-boot always mounts UBIFS read-only.
>> So even when Linux mounts UBIFS rw and a powercut happens orphan
>> processing
>> will happen twice.
>
> Sure, because in the R/O case the results of that processing cannot be
> "saved" on the media, so they have to be repeated.
>
>> I'd suggest calling ubifs_mount_orphans() only when we mount rw or
>> remount to
>> rw.
>> What do you think?
>
> I understand the problem. I do not think this is the right solution
> because it'll introduce a regression (incorrect used/free space). But a
> special mount option and/or superblock flag may be considered, if this
> helps substantially.
A new mount option is an option, true.
That said, the real solution is that u-boot (and other bootloaders)
should not mount UBIFS and use static volumes.
But currently the opposite is happening on most systems I get my hands on. :(
Thanks,
//richard
--
sigma star gmbh - Eduard-Bodem-Gasse 6 - 6020 Innsbruck - Austria
ATU66964118 - FN 374287y
More information about the linux-mtd
mailing list