OSDN Git Service

UBI: Fastmap: Fall back to scanning mode after ECC error
authorRichard Weinberger <richard@nod.at>
Mon, 9 Mar 2015 09:04:09 +0000 (10:04 +0100)
committerRichard Weinberger <richard@nod.at>
Thu, 26 Mar 2015 22:03:15 +0000 (23:03 +0100)
If we encounter an uncorrectable ECC error while scanning for the fastmap
UBI must not fail hard. Instead fall back to scanning mode.

Reported-by: Alexander Block <Alexander.Block@continental-corporation.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
drivers/mtd/ubi/attach.c

index 42d465a..68eea5b 100644 (file)
@@ -1419,7 +1419,7 @@ int ubi_attach(struct ubi_device *ubi, int force_scan)
                err = scan_all(ubi, ai, 0);
        else {
                err = scan_fast(ubi, &ai);
-               if (err > 0) {
+               if (err > 0 || mtd_is_eccerr(err)) {
                        if (err != UBI_NO_FASTMAP) {
                                destroy_ai(ai);
                                ai = alloc_ai();