UBI: Fastmap: Fix fastmap usage in ubi_volume_notify()
authorRichard Weinberger <richard@nod.at>
Mon, 6 Oct 2014 13:14:16 +0000 (15:14 +0200)
committerRichard Weinberger <richard@nod.at>
Thu, 26 Mar 2015 21:45:56 +0000 (22:45 +0100)
There is no need to switch to ro mode if ubi_update_fastmap() fails.
Also get rid of the ifdef.

Signed-off-by: Richard Weinberger <richard@nod.at>
Reviewed-by: Tanya Brokhman <tlinder@codeaurora.org>
drivers/mtd/ubi/build.c

index ba01a8d22d28bb7eb42d48f7da64b3b01da32f29..112a66c6596695cbec9abaca1028442823904853 100644 (file)
@@ -154,23 +154,22 @@ static struct device_attribute dev_mtd_num =
  */
 int ubi_volume_notify(struct ubi_device *ubi, struct ubi_volume *vol, int ntype)
 {
+       int ret;
        struct ubi_notification nt;
 
        ubi_do_get_device_info(ubi, &nt.di);
        ubi_do_get_volume_info(ubi, vol, &nt.vi);
 
-#ifdef CONFIG_MTD_UBI_FASTMAP
        switch (ntype) {
        case UBI_VOLUME_ADDED:
        case UBI_VOLUME_REMOVED:
        case UBI_VOLUME_RESIZED:
        case UBI_VOLUME_RENAMED:
-               if (ubi_update_fastmap(ubi)) {
-                       ubi_err(ubi, "Unable to update fastmap!");
-                       ubi_ro_mode(ubi);
-               }
+               ret = ubi_update_fastmap(ubi);
+               if (ret)
+                       ubi_msg(ubi, "Unable to write a new fastmap: %i", ret);
        }
-#endif
+
        return blocking_notifier_call_chain(&ubi_notifiers, ntype, &nt);
 }