The use of the __free function allows the cleanup to be based on scope
instead of on another function called later. This makes the cleanup
automatic and less susceptible to errors later.

This code was compiled without errors or warnings.

Signed-off-by: David Hunter <david.hunter.li...@gmail.com>
---
 arch/powerpc/platforms/82xx/km82xx.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/powerpc/platforms/82xx/km82xx.c 
b/arch/powerpc/platforms/82xx/km82xx.c
index c86da3f2b74b..5791c9c5acd0 100644
--- a/arch/powerpc/platforms/82xx/km82xx.c
+++ b/arch/powerpc/platforms/82xx/km82xx.c
@@ -27,15 +27,15 @@
 
 static void __init km82xx_pic_init(void)
 {
-       struct device_node *np = of_find_compatible_node(NULL, NULL,
-                                                       "fsl,pq2-pic");
+       struct device_node *np __free(device_node) = 
of_find_compatible_node(NULL,
+                                                                            
NULL,
+                                                                            
"fsl,pq2-pic");
        if (!np) {
                pr_err("PIC init: can not find cpm-pic node\n");
                return;
        }
 
        cpm2_pic_init(np);
-       of_node_put(np);
 }
 
 struct cpm_pin {
-- 
2.34.1

Reply via email to