ubifs: nand flash wear profiling for userspace application file i/o

Richard Weinberger richard.weinberger at gmail.com
Fri Aug 7 05:30:56 PDT 2015


On Fri, Aug 7, 2015 at 1:47 PM, Ильяс Гасанов <torso.nafi at gmail.com> wrote:
> Hello.
>
> We are developing a GNU/Linux-based appliance, and our customers are
> concerned that the defining application, which runs on it, wears out
> its flash storage too quickly under certain circumstances. The h/w
> supplier guarantees at least 10 000 rewrite cycles for its nand flash
> blocks before wear out.

10000 is not much, is this MLC?

> Is there a suitable method to count (or accurately estimate) the
> distribution of rewrite cycles for ubifs flash blocks during a certain
> period of application work cycle, e. g. for three days? The power is
> not guaranteed to be 100% time on, without a single outage, so it
> would be preferred if persistent data is used, like ubifs journal or
> ubi wear-leveling peb contents, rather than volatile kernelspace
> counters and such.

ubinfo prints the maximum erase counter value, does this help?
This info is also available via /sys/class/ubi/ubi0/max_ec.

If you want the distribution you have to write a small script which
reads the EC header of all blocks.
But as UBI does wear leveling for you, the distribution should not
matter. Please keep in mind that you need to define a sane
WL threshold.

-- 
Thanks,
//richard



More information about the linux-mtd mailing list