UBI: Fastmap: Fix fastmap usage in ubi_volume_notify()
[firefly-linux-kernel-4.4.55.git] / 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);
 }