[RFC v6] UBI: Fastmap support (aka checkpointing)
Richard Weinberger
richard at nod.at
Mon May 21 10:01:55 EDT 2012
v1: https://lwn.net/Articles/481612/
v2: https://lwn.net/Articles/496586/
v3: Didn't release it to linux-mtd
v4: http://article.gmane.org/gmane.linux.kernel/1297626
v5: http://article.gmane.org/gmane.linux.kernel/1298488
Changes since v1:
- renamed it to UBIVIS (at least in Kconfig)
- UBIVIS parameters are now configurable via Kconfig
- several bugs have been fixed (design and implementation bugs)
- added lots of comments to make the review process easier
- made checkpatch.pl happy
Changes since v2:
- minor bugs have been fixed
- renamed it to UBI fastmap (as Artem requested)
Changes since v3:
- changed the on-flash layout (added padding fields, turned the
EBA storage into an array)
- fixed some corner cases (the protection queue needed some extra work)
- removed the data type hint logic
- rebased to Artems mtd tree
Changes since v4:
- fixed static volume handling (used_ebs and last_data_bytes contained
bad values in some cases)
Changes since v5:
- merged it into a single patch
- rebased to Artems mtd tree (addressed all renames)
- fixed issues pointed out by Artem
- redefined fastmap parameters
The fastmap super block has to be located within the first 64 PEBs.
A fastmap can use up to 32 PEBs.
The fastmap pool (the number of to be scanned PEBs while attaching)
is now derived from the flash size.
The current formular is Np = max(min(5% of total PEBs, 256), 8)
Comments/better ideas?
For now a fastmap contains only used and free PEBs.
Shall we also take care about bad PEBs?
What about bad_peb_count corr_peb_count?
git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubi2.git ubi2/v6
[PATCH] [RFC] UBI: Implement Fastmap support
More information about the linux-mtd
mailing list