RTC: Release mutex in error path of rtc_alarm_irq_enable
On hardware that doesn't support alarm interrupts, rtc_alarm_irq_enable
could return without releasing the ops_lock mutex.
This was introduced in
aa0be0f
(RTC: Propagate error handling via rtc_timer_enqueue properly)
This patch corrects the issue by only returning once the mutex is
released.
[john.stultz: Reworded the commit log]
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: John Stultz <john.stultz@linaro.org>
This commit is contained in:
Родитель
d8ce1481ee
Коммит
516373b8b6
|
@ -209,9 +209,8 @@ int rtc_alarm_irq_enable(struct rtc_device *rtc, unsigned int enabled)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
/* nothing */;
|
||||||
|
else if (!rtc->ops)
|
||||||
if (!rtc->ops)
|
|
||||||
err = -ENODEV;
|
err = -ENODEV;
|
||||||
else if (!rtc->ops->alarm_irq_enable)
|
else if (!rtc->ops->alarm_irq_enable)
|
||||||
err = -EINVAL;
|
err = -EINVAL;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче