From: Takeshi Yoshimura Date: Sun, 14 Jun 2015 11:55:18 +0000 (+0900) Subject: wm831x_power: Fix off-by-one at free_irq() X-Git-Tag: v4.2-rc1~145^2~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=85a5965e1dc5473fd2ae5ff0cb071cfc597c3451;p=platform%2Fkernel%2Flinux-exynos.git wm831x_power: Fix off-by-one at free_irq() An error handling in wm831x_power_probe() mistakenly frees a failed-to- request irq as well as other irqs. I added missing decrement of the loop counter. Signed-off-by: Takeshi Yoshimura Acked-by: Charles Keepax Signed-off-by: Sebastian Reichel --- diff --git a/drivers/power/wm831x_power.c b/drivers/power/wm831x_power.c index 0161bda..db11ae6 100644 --- a/drivers/power/wm831x_power.c +++ b/drivers/power/wm831x_power.c @@ -609,6 +609,7 @@ static int wm831x_power_probe(struct platform_device *pdev) return ret; err_bat_irq: + --i; for (; i >= 0; i--) { irq = platform_get_irq_byname(pdev, wm831x_bat_irqs[i]); free_irq(irq, power);