of: overlay: Simplify of_overlay_fdt_apply() tail
authorGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 15 Jul 2022 14:03:15 +0000 (16:03 +0200)
committerRob Herring <robh@kernel.org>
Tue, 19 Jul 2022 21:56:48 +0000 (15:56 -0600)
It does not hurt to fill in the changeset id while the mutex is still
held.  After doing so, the function tails for the success and failure
cases become identical, so they can be unified.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Frank Rowand <frank.rowand@sony.com>
Tested-by: Frank Rowand <frank.rowand@sony.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/6a3357a8f7f29704350e3ffae768ee8a462b54d3.1657893306.git.geert+renesas@glider.be
drivers/of/overlay.c

index 84a8d40..bd8ff4d 100644 (file)
@@ -1043,20 +1043,15 @@ int of_overlay_fdt_apply(const void *overlay_fdt, u32 overlay_fdt_size,
         * goto err_free_ovcs.  Instead, the caller of of_overlay_fdt_apply()
         * can call of_overlay_remove();
         */
-
-       mutex_unlock(&of_mutex);
-       of_overlay_mutex_unlock();
-
        *ret_ovcs_id = ovcs->id;
-
-       return ret;
+       goto out_unlock;
 
 err_free_ovcs:
        free_overlay_changeset(ovcs);
 
+out_unlock:
        mutex_unlock(&of_mutex);
        of_overlay_mutex_unlock();
-
        return ret;
 }
 EXPORT_SYMBOL_GPL(of_overlay_fdt_apply);