mirror of
https://github.com/torvalds/linux.git
synced 2026-06-05 04:56:13 +02:00
The UBIFS space fixup is a useful feature which allows to fixup the "broken" flash space at the time of the first mount. The "broken" space is usually the result of using a "dumb" industrial flasher which is not able to skip empty NAND pages and just writes all 0xFFs to the empty space, which has grave side-effects for UBIFS when UBIFS trise to write useful data to those empty pages. The fix-up feature works roughly like this: 1. mkfs.ubifs sets the fixup flag in UBIFS superblock when creating the image (see -F option) 2. when the file-system is mounted for the first time, UBIFS notices the fixup flag and re-writes the entire media atomically, which may take really a lot of time. 3. UBIFS clears the fixup flag in the superblock. This works fine when the file system is mounted R/W for the very first time. But it did not really work in the case when we first mount the file-system R/O, and then re-mount R/W. The reason was that we started the fixup procedure too late, which we cannot really do because we have to fixup the space before it starts being used. Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> Reported-by: Mark Jackson <mpfj-list@mimc.co.uk> Cc: stable@vger.kernel.org # 3.0+ |
||
|---|---|---|
| .. | ||
| budget.c | ||
| commit.c | ||
| compress.c | ||
| debug.c | ||
| debug.h | ||
| dir.c | ||
| file.c | ||
| find.c | ||
| gc.c | ||
| io.c | ||
| ioctl.c | ||
| journal.c | ||
| Kconfig | ||
| key.h | ||
| log.c | ||
| lprops.c | ||
| lpt_commit.c | ||
| lpt.c | ||
| Makefile | ||
| master.c | ||
| misc.h | ||
| orphan.c | ||
| recovery.c | ||
| replay.c | ||
| sb.c | ||
| scan.c | ||
| shrinker.c | ||
| super.c | ||
| tnc_commit.c | ||
| tnc_misc.c | ||
| tnc.c | ||
| ubifs-media.h | ||
| ubifs.h | ||
| xattr.c | ||