Messages in this thread Patch in this message | | | Subject | [PATCH] 88pm860x_bl: fix error handling in pm860x_backlight_probe | From | Axel Lin <> | Date | Mon, 10 May 2010 09:29:58 +0800 |
| |
This patch includes below fixes: 1. fixes a memory leak by kfree(data) in the case of data->port < 0. 2. properly unregisters a previously registered backlight device object in error handling
Signed-off-by: Axel Lin <axel.lin@gmail.com> --- drivers/video/backlight/88pm860x_bl.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/drivers/video/backlight/88pm860x_bl.c b/drivers/video/backlight/88pm860x_bl.c index 68d2518..38ffc3f 100644 --- a/drivers/video/backlight/88pm860x_bl.c +++ b/drivers/video/backlight/88pm860x_bl.c @@ -222,6 +222,7 @@ static int pm860x_backlight_probe(struct platform_device *pdev) data->port = __check_device(pdata, name); if (data->port < 0) { dev_err(&pdev->dev, "wrong platform data is assigned"); + kfree(data); return -EINVAL; } @@ -266,6 +267,7 @@ static int pm860x_backlight_probe(struct platform_device *pdev) backlight_update_status(bl); return 0; out: + backlight_device_unregister(bl); kfree(data); return ret; } -- 1.5.4.3
| |