linux/drivers/mtd/ubi
Richard Weinberger 2e8f08deab ubi: Fix races around ubi_refill_pools()
When writing a new Fastmap the first thing that happens
is refilling the pools in memory.
At this stage it is possible that new PEBs from the new pools
get already claimed and written with data.
If this happens before the new Fastmap data structure hits the
flash and we face power cut the freshly written PEB will not
scanned and unnoticed.

Solve the issue by locking the pools until Fastmap is written.

Cc: <stable@vger.kernel.org>
Fixes: dbb7d2a88d ("UBI: Add fastmap core")
Signed-off-by: Richard Weinberger <richard@nod.at>
2016-10-02 22:54:01 +02:00
..
attach.c UBI: introduce the VID buffer concept 2016-10-02 22:48:14 +02:00
block.c Minor merge needed, due to function move. 2015-07-01 10:49:25 -07:00
build.c UBI: hide EBA internals 2016-10-02 22:48:14 +02:00
cdev.c UBI: add an helper to check lnum validity 2016-10-02 22:48:14 +02:00
debug.c UBI: Silence an unintialized variable warning 2016-05-24 15:24:30 +02:00
debug.h UBI: power cut emulation for testing 2015-04-13 21:05:17 +02:00
eba.c ubi: Fix races around ubi_refill_pools() 2016-10-02 22:54:01 +02:00
fastmap-wl.c ubi: Fix races around ubi_refill_pools() 2016-10-02 22:54:01 +02:00
fastmap.c ubi: Fix races around ubi_refill_pools() 2016-10-02 22:54:01 +02:00
gluebi.c ubi: gluebi: Fix double refcounting 2016-07-29 23:31:54 +02:00
io.c UBI: introduce the VID buffer concept 2016-10-02 22:48:14 +02:00
kapi.c UBI: provide an helper to check whether a LEB is mapped or not 2016-10-02 22:48:14 +02:00
Kconfig UBI: block: Add CONFIG_BLOCK dependency 2014-03-04 14:49:53 +02:00
Makefile UBI: R/O block driver on top of UBI volumes 2014-02-28 16:29:48 +02:00
misc.c mtd: ubi: Add logging functions ubi_msg, ubi_warn and ubi_err 2016-03-20 21:36:05 +01:00
ubi-media.h UBI: Fix typo in comment 2015-10-03 20:09:41 +02:00
ubi.h UBI: introduce the VID buffer concept 2016-10-02 22:48:14 +02:00
upd.c ubi: Fix out of bounds write in volume update code 2016-03-05 21:56:23 +01:00
vmt.c UBI: hide EBA internals 2016-10-02 22:48:14 +02:00
vtbl.c UBI: introduce the VID buffer concept 2016-10-02 22:48:14 +02:00
wl.c ubi: Fix races around ubi_refill_pools() 2016-10-02 22:54:01 +02:00
wl.h UBI: Fastmap: Remove is_fm_block() 2015-03-26 22:47:38 +01:00