lkml.org 
[lkml]   [2022]   [Oct]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 6.0 497/862] media: xilinx: vipp: Fix refcount leak in xvip_graph_dma_init
    Date
    From: Miaoqian Lin <linmq006@gmail.com>

    [ Upstream commit 1c78f19c3a0ea312a8178a6bfd8934eb93e9b10a ]

    of_get_child_by_name() returns a node pointer with refcount
    incremented, we should use of_node_put() on it when not need anymore.
    Add missing of_node_put() to avoid refcount leak.

    Fixes: df3305156f98 ("[media] v4l: xilinx: Add Xilinx Video IP core")
    Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
    Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/media/platform/xilinx/xilinx-vipp.c | 9 +++++----
    1 file changed, 5 insertions(+), 4 deletions(-)

    diff --git a/drivers/media/platform/xilinx/xilinx-vipp.c b/drivers/media/platform/xilinx/xilinx-vipp.c
    index f34f8b077e03..0a16c218a50a 100644
    --- a/drivers/media/platform/xilinx/xilinx-vipp.c
    +++ b/drivers/media/platform/xilinx/xilinx-vipp.c
    @@ -471,7 +471,7 @@ static int xvip_graph_dma_init(struct xvip_composite_device *xdev)
    {
    struct device_node *ports;
    struct device_node *port;
    - int ret;
    + int ret = 0;

    ports = of_get_child_by_name(xdev->dev->of_node, "ports");
    if (ports == NULL) {
    @@ -481,13 +481,14 @@ static int xvip_graph_dma_init(struct xvip_composite_device *xdev)

    for_each_child_of_node(ports, port) {
    ret = xvip_graph_dma_init_one(xdev, port);
    - if (ret < 0) {
    + if (ret) {
    of_node_put(port);
    - return ret;
    + break;
    }
    }

    - return 0;
    + of_node_put(ports);
    + return ret;
    }

    static void xvip_graph_cleanup(struct xvip_composite_device *xdev)
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-10-19 11:12    [W:4.031 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site