]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
remoteproc: k3: Call of_node_put(rmem_np) only once in three functions
authorMarkus Elfring <elfring@users.sourceforge.net>
Tue, 24 Sep 2024 12:28:35 +0000 (14:28 +0200)
committerMathieu Poirier <mathieu.poirier@linaro.org>
Mon, 30 Sep 2024 15:50:20 +0000 (09:50 -0600)
An of_node_put(rmem_np) call was immediately used after a pointer check
for a of_reserved_mem_lookup() call in three function implementations.
Thus call such a function only once instead directly before the checks.

This issue was transformed by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Link: https://lore.kernel.org/r/c46b06f9-72b1-420b-9dce-a392b982140e@web.de
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
drivers/remoteproc/ti_k3_dsp_remoteproc.c
drivers/remoteproc/ti_k3_m4_remoteproc.c
drivers/remoteproc/ti_k3_r5_remoteproc.c

index 8be3f631c1920608c9548e8b9146787f4bda14c7..d08a3a98ada1ca0d766d2769f5110ee068b32744 100644 (file)
@@ -576,11 +576,9 @@ static int k3_dsp_reserved_mem_init(struct k3_dsp_rproc *kproc)
                        return -EINVAL;
 
                rmem = of_reserved_mem_lookup(rmem_np);
-               if (!rmem) {
-                       of_node_put(rmem_np);
-                       return -EINVAL;
-               }
                of_node_put(rmem_np);
+               if (!rmem)
+                       return -EINVAL;
 
                kproc->rmem[i].bus_addr = rmem->base;
                /* 64-bit address regions currently not supported */
index 09f0484a90e103c7838169f88984d21b58a87c6f..a16fb165fcedd4fe11a607b095fe2eeaff4d630f 100644 (file)
@@ -433,11 +433,9 @@ static int k3_m4_reserved_mem_init(struct k3_m4_rproc *kproc)
                        return -EINVAL;
 
                rmem = of_reserved_mem_lookup(rmem_np);
-               if (!rmem) {
-                       of_node_put(rmem_np);
-                       return -EINVAL;
-               }
                of_node_put(rmem_np);
+               if (!rmem)
+                       return -EINVAL;
 
                kproc->rmem[i].bus_addr = rmem->base;
                /* 64-bit address regions currently not supported */
index 747ee467da88c97408dbf8f166d970adf1382b3d..d0ebdd5cfa70e1dac782f5e131a0f19c9ac096d9 100644 (file)
@@ -1001,12 +1001,11 @@ static int k3_r5_reserved_mem_init(struct k3_r5_rproc *kproc)
                }
 
                rmem = of_reserved_mem_lookup(rmem_np);
+               of_node_put(rmem_np);
                if (!rmem) {
-                       of_node_put(rmem_np);
                        ret = -EINVAL;
                        goto unmap_rmem;
                }
-               of_node_put(rmem_np);
 
                kproc->rmem[i].bus_addr = rmem->base;
                /*