[PATCH] fsl_hypervisor: Add missing of_node_put in fsl_hypervisor_init

From: He Ying
Date: Thu Oct 28 2021 - 23:18:24 EST


Early exits from for_each_compatible_node() should decrement the
node reference counter.

Signed-off-by: He Ying <heying24@xxxxxxxxxx>
Fixes: 6db7199407ca ("drivers/virt: introduce Freescale hypervisor management driver")
---
drivers/virt/fsl_hypervisor.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/virt/fsl_hypervisor.c b/drivers/virt/fsl_hypervisor.c
index 46ee0a0998b6..ef5fcca4b8f0 100644
--- a/drivers/virt/fsl_hypervisor.c
+++ b/drivers/virt/fsl_hypervisor.c
@@ -849,8 +849,10 @@ static int __init fsl_hypervisor_init(void)
}

dbisr = kzalloc(sizeof(*dbisr), GFP_KERNEL);
- if (!dbisr)
+ if (!dbisr) {
+ of_node_put(np);
goto out_of_memory;
+ }

dbisr->irq = irq;
dbisr->doorbell = be32_to_cpup(handle);
--
2.17.1