From: kernel test robot <lkp@xxxxxxxxx> For_each_child_of_node" should have of_node_put() before return. Generated by: scripts/coccinelle/iterators/for_each_child.cocci CC: Anand Ashok Dumbre <anand.ashok.dumbre@xxxxxxxxxx> Reported-by: kernel test robot <lkp@xxxxxxxxx> Signed-off-by: kernel test robot <lkp@xxxxxxxxx> Signed-off-by: Julia Lawall <julia.lawall@xxxxxxxx> --- tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v5.15 head: 966124532656bc95d781abf57531e4cd4f962237 commit: 1459646ab280aa68c3c4fa1d9552ea21f15d7a2d [543/923] iio: versal-sysmon: add driver for Versal Sysmon :::::: branch date: 3 days ago :::::: commit date: 12 days ago Please take the patch only if it's a positive warning. Thanks! versal-sysmon.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) --- a/drivers/iio/adc/versal-sysmon.c +++ b/drivers/iio/adc/versal-sysmon.c @@ -875,12 +875,16 @@ static int sysmon_parse_dt(struct iio_de for_each_child_of_node(np, child_node) { ret = of_property_read_u32(child_node, "reg", ®); - if (ret < 0) + if (ret < 0) { + of_node_put(child_node); return ret; + } ret = of_property_read_string(child_node, "xlnx,name", &name); - if (ret < 0) + if (ret < 0) { + of_node_put(child_node); return ret; + } sysmon_channels[i].type = IIO_VOLTAGE; sysmon_channels[i].indexed = 1;