diff --git a/[refs] b/[refs] index b7a4c922ace2..3766120e3d45 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1713cb9d6069fac581fcea928f65ca6ca7c9facf +refs/heads/master: c957b614bde8539416dcde8d702370ff30b1c662 diff --git a/trunk/drivers/leds/leds-wm8350.c b/trunk/drivers/leds/leds-wm8350.c index 390c0f679628..918d4baff1c7 100644 --- a/trunk/drivers/leds/leds-wm8350.c +++ b/trunk/drivers/leds/leds-wm8350.c @@ -227,7 +227,7 @@ static int wm8350_led_probe(struct platform_device *pdev) goto err_isink; } - led = kzalloc(sizeof(*led), GFP_KERNEL); + led = devm_kzalloc(&pdev->dev, sizeof(*led), GFP_KERNEL); if (led == NULL) { ret = -ENOMEM; goto err_dcdc; @@ -259,12 +259,10 @@ static int wm8350_led_probe(struct platform_device *pdev) ret = led_classdev_register(&pdev->dev, &led->cdev); if (ret < 0) - goto err_led; + goto err_dcdc; return 0; - err_led: - kfree(led); err_dcdc: regulator_put(dcdc); err_isink: @@ -281,7 +279,6 @@ static int wm8350_led_remove(struct platform_device *pdev) wm8350_led_disable(led); regulator_put(led->dcdc); regulator_put(led->isink); - kfree(led); return 0; }