lkml.org 
[lkml]   [2021]   [Jan]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 52/92] staging: mt7621-dma: Fix a resource leak in an error handling path
    Date
    From: Christophe JAILLET <christophe.jaillet@wanadoo.fr>

    commit d887d6104adeb94d1b926936ea21f07367f0ff9f upstream.

    If an error occurs after calling 'mtk_hsdma_init()', it must be undone by
    a corresponding call to 'mtk_hsdma_uninit()' as already done in the
    remove function.

    Fixes: 0853c7a53eb3 ("staging: mt7621-dma: ralink: add rt2880 dma engine")
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Cc: stable <stable@vger.kernel.org>
    Link: https://lore.kernel.org/r/20201213153513.138723-1-christophe.jaillet@wanadoo.fr
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/staging/mt7621-dma/mtk-hsdma.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    --- a/drivers/staging/mt7621-dma/mtk-hsdma.c
    +++ b/drivers/staging/mt7621-dma/mtk-hsdma.c
    @@ -714,7 +714,7 @@ static int mtk_hsdma_probe(struct platfo
    ret = dma_async_device_register(dd);
    if (ret) {
    dev_err(&pdev->dev, "failed to register dma device\n");
    - return ret;
    + goto err_uninit_hsdma;
    }

    ret = of_dma_controller_register(pdev->dev.of_node,
    @@ -730,6 +730,8 @@ static int mtk_hsdma_probe(struct platfo

    err_unregister:
    dma_async_device_unregister(dd);
    +err_uninit_hsdma:
    + mtk_hsdma_uninit(hsdma);
    return ret;
    }


    \
     
     \ /
      Last update: 2021-01-11 14:41    [W:4.493 / U:0.108 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site