4.6-stable review patch. If anyone has any objections, please let me know.
------------------ From: Shubhrajyoti Datta <[email protected]> commit 615d23f80efc60f8c5146223f305d19207c742e4 upstream. pm_runtime_disable is called only in remove it is missed out in the error path. Fix the same. Signed-off-by: Shubhrajyoti Datta <[email protected]> Signed-off-by: Linus Walleij <[email protected]> Cc: Helmut Grohne <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]> --- drivers/gpio/gpio-zynq.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) --- a/drivers/gpio/gpio-zynq.c +++ b/drivers/gpio/gpio-zynq.c @@ -713,7 +713,7 @@ static int zynq_gpio_probe(struct platfo pm_runtime_enable(&pdev->dev); ret = pm_runtime_get_sync(&pdev->dev); if (ret < 0) - return ret; + goto err_pm_dis; /* report a bug if gpio chip registration fails */ ret = gpiochip_add_data(chip, gpio); @@ -745,6 +745,8 @@ err_rm_gpiochip: gpiochip_remove(chip); err_pm_put: pm_runtime_put(&pdev->dev); +err_pm_dis: + pm_runtime_disable(&pdev->dev); return ret; }

