summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorRichard Weinberger <richard@nod.at>2014-10-07 21:45:19 +0200
committerRichard Weinberger <richard@nod.at>2015-03-26 22:45:59 +0100
commit2d93fb3632755c170bc684989709e28ef3d22a80 (patch)
tree7aef6f769a109af63ebcad6c0994cd30bd863a82 /drivers
parentd141a8ef21ab496ab6f8d188dfe7ca33e16fe798 (diff)
downloadlinux-2d93fb3632755c170bc684989709e28ef3d22a80.tar.gz
linux-2d93fb3632755c170bc684989709e28ef3d22a80.tar.bz2
linux-2d93fb3632755c170bc684989709e28ef3d22a80.zip
UBI: Fastmap: Switch to ro mode if invalidate_fastmap() fails
We have to switch to ro mode to guarantee that upon next UBI attach all data is consistent. Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mtd/ubi/fastmap.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c
index 8b95c48a002d..3d913f53fd06 100644
--- a/drivers/mtd/ubi/fastmap.c
+++ b/drivers/mtd/ubi/fastmap.c
@@ -1466,8 +1466,10 @@ err:
ret = 0;
if (old_fm) {
ret = invalidate_fastmap(ubi, old_fm);
- if (ret < 0)
+ if (ret < 0) {
ubi_err(ubi, "Unable to invalidiate current fastmap!");
+ ubi_ro_mode(ubi);
+ }
else if (ret)
ret = 0;
}