summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthieu CASTET <matthieu.castet@parrot.com>2012-08-22 16:03:46 +0200
committerArtem Bityutskiy <artem.bityutskiy@linux.intel.com>2012-09-04 09:39:01 +0300
commit193819cf2e6e395b1e1be2d36785dc5563a6edca (patch)
tree51a3cc303a5f34c8fc63ef102da0bde66edfc89c
parentabb3e01103eb4e2ea5c15e6fedbc74e08bd4cc2b (diff)
downloadop-kernel-dev-193819cf2e6e395b1e1be2d36785dc5563a6edca.zip
op-kernel-dev-193819cf2e6e395b1e1be2d36785dc5563a6edca.tar.gz
UBI: erase free PEB with bitflip in EC header
Without this patch, these PEB are not scrubbed until we put data in them. Bitflip can accumulate latter and we can loose the EC header (but VID header should be intact and allow to recover data). Signed-off-by: Matthieu Castet <matthieu.castet@parrot.com> Cc: stable@vger.kernel.org Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
-rw-r--r--drivers/mtd/ubi/attach.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mtd/ubi/attach.c b/drivers/mtd/ubi/attach.c
index bd27cbb..68d4d1f 100644
--- a/drivers/mtd/ubi/attach.c
+++ b/drivers/mtd/ubi/attach.c
@@ -975,7 +975,7 @@ static int scan_peb(struct ubi_device *ubi, struct ubi_attach_info *ai,
return err;
goto adjust_mean_ec;
case UBI_IO_FF:
- if (ec_err)
+ if (ec_err || bitflips)
err = add_to_list(ai, pnum, UBI_UNKNOWN,
UBI_UNKNOWN, ec, 1, &ai->erase);
else
OpenPOWER on IntegriCloud