Re: [PATCH v2] media: mdp3: Fix resource leak in a for_each_child_of_node() loop

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Il 20/07/23 14:19, Lu Hongfei ha scritto:
On 2023/7/20 15:51, AngeloGioacchino Del Regno wrote:
[Some people who received this message don't often get email from
angelogioacchino.delregno@xxxxxxxxxxxxx. Learn why this is important
at https://aka.ms/LearnAboutSenderIdentification ]

Il 20/07/23 08:23, Lu Hongfei ha scritto:
for_each_child_of_node should have of_node_put()
in error path avoid resource leaks.

Signed-off-by: Lu Hongfei <luhongfei@xxxxxxxx>
---
Changelog:
v1->v2:
1. Change the subject line of this patch to include driver name.
2. Remove the unneeded of_node_put.

   drivers/media/platform/mediatek/mdp3/mtk-mdp3-comp.c | 1 +
   1 file changed, 1 insertion(+)

diff --git a/drivers/media/platform/mediatek/mdp3/mtk-mdp3-comp.c
b/drivers/media/platform/mediatek/mdp3/mtk-mdp3-comp.c
index a605e80c7dc3..40c4b79a5090 100644
--- a/drivers/media/platform/mediatek/mdp3/mtk-mdp3-comp.c
+++ b/drivers/media/platform/mediatek/mdp3/mtk-mdp3-comp.c
@@ -1135,6 +1135,7 @@ int mdp_comp_config(struct mdp_dev *mdp)
               comp = mdp_comp_create(mdp, node, id);
               if (IS_ERR(comp)) {
                       ret = PTR_ERR(comp);
+                     of_node_put(node);
                       goto err_init_comps;
               }


In case mdp_comp_sub_create() fails, we still want to decrease the
refcount
of `node`....

...so, just call of_node_put(node) just once, at the err_init_comps
label.

err_init_comps:
        mdp_comp_destroy(mdp);
        of_node_put(node);
        return ret;

Regards,
Angelo

mdp_comp_sub_create() executes after for_each_child_of_node loop ends.

The for_each_child_of_node loop ended, node == NULL and there is nothing
to put.

So I don't think it's necessary to decrease the refcount of `node` again
when

mdp_comp_sub_create() fails.

Or you could further explain the reason for doing so.


You're right. My bad.

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@xxxxxxxxxxxxx>



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux