lkml.org 
[lkml]   [2011]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] hecubafb: add module_put on error path in hecubafb_probe()
    Date
    In hecubafb_probe(), after a successful try_module_get, vzalloc may
    fail and make the hecubafb_probe return, but the module is not put on
    this error path.

    This patch adds an exit point that calls module_put in such situation.

    Found by Linux Driver Verification project (linuxtesting.org).

    Signed-off-by: Pavel Shved <shved@ispras.ru>
    ---
    drivers/video/hecubafb.c | 3 ++-
    1 files changed, 2 insertions(+), 1 deletions(-)

    diff --git a/drivers/video/hecubafb.c b/drivers/video/hecubafb.c
    index fbef15f..614251a 100644
    --- a/drivers/video/hecubafb.c
    +++ b/drivers/video/hecubafb.c
    @@ -233,7 +233,7 @@ static int __devinit hecubafb_probe(struct platform_device *dev)

    videomemory = vzalloc(videomemorysize);
    if (!videomemory)
    - return retval;
    + goto err_videomem_alloc;

    info = framebuffer_alloc(sizeof(struct hecubafb_par), &dev->dev);
    if (!info)
    @@ -275,6 +275,7 @@ err_fbreg:
    framebuffer_release(info);
    err_fballoc:
    vfree(videomemory);
    +err_videomem_alloc:
    module_put(board->owner);
    return retval;
    }
    --
    1.7.0.2


    \
     
     \ /
      Last update: 2011-06-17 18:59    [W:0.023 / U:0.164 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site