diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-01-10 15:09:45 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-01-10 16:30:49 -0800 |
commit | 1713cb9d6069fac581fcea928f65ca6ca7c9facf (patch) | |
tree | 51aec6df6fa247827b54f41b75ec3a66d426362b /drivers/leds/leds-wm831x-status.c | |
parent | 3b080945aa7670354364c8f9e1a3a07cbb97beb3 (diff) | |
download | lwn-1713cb9d6069fac581fcea928f65ca6ca7c9facf.tar.gz lwn-1713cb9d6069fac581fcea928f65ca6ca7c9facf.zip |
leds: convert wm831x status driver to devm_kzalloc()
Saves a small amount of code and systematically eliminates leaks.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/leds/leds-wm831x-status.c')
-rw-r--r-- | drivers/leds/leds-wm831x-status.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/leds/leds-wm831x-status.c b/drivers/leds/leds-wm831x-status.c index 444a68d8e17e..74a24cf897c3 100644 --- a/drivers/leds/leds-wm831x-status.c +++ b/drivers/leds/leds-wm831x-status.c @@ -237,7 +237,8 @@ static int wm831x_status_probe(struct platform_device *pdev) goto err; } - drvdata = kzalloc(sizeof(struct wm831x_status), GFP_KERNEL); + drvdata = devm_kzalloc(&pdev->dev, sizeof(struct wm831x_status), + GFP_KERNEL); if (!drvdata) return -ENOMEM; dev_set_drvdata(&pdev->dev, drvdata); @@ -300,7 +301,6 @@ static int wm831x_status_probe(struct platform_device *pdev) err_led: led_classdev_unregister(&drvdata->cdev); - kfree(drvdata); err: return ret; } @@ -311,7 +311,6 @@ static int wm831x_status_remove(struct platform_device *pdev) device_remove_file(drvdata->cdev.dev, &dev_attr_src); led_classdev_unregister(&drvdata->cdev); - kfree(drvdata); return 0; } |