UBI: improve delete-compatible volumes handling
authorBrijesh Singh <brijesh.s.singh@gmail.com>
Wed, 16 Jun 2010 06:28:26 +0000 (09:28 +0300)
committerArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
Wed, 16 Jun 2010 06:39:49 +0000 (09:39 +0300)
When a delete-compatible volume is found, it is first added to the
'corr' list, which contains "corrupted" PEBs which should be erased,
and then it is added to the used volumes tree. However, the second
step should not be done. This does not cause problems in practice,
because we never access delete-compattible volumes, but it is still
not the right thing to do.

[Artem: amended the commit message and few prints]

Signed-off-by: Brijesh Singh <brijesh.s.singh@gmail.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
drivers/mtd/ubi/scan.c

index 37855e5..a86c048 100644 (file)
@@ -842,11 +842,11 @@ static int process_eb(struct ubi_device *ubi, struct ubi_scan_info *si,
                switch (vidh->compat) {
                case UBI_COMPAT_DELETE:
                        ubi_msg("\"delete\" compatible internal volume %d:%d"
-                               " found, remove it", vol_id, lnum);
+                               " found, will remove it", vol_id, lnum);
                        err = add_to_list(si, pnum, ec, &si->corr);
                        if (err)
                                return err;
-                       break;
+                       return 0;
 
                case UBI_COMPAT_RO:
                        ubi_msg("read-only compatible internal volume %d:%d"