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:
Uwe Kleine-König 2011-02-14 11:33:17 +01:00 коммит произвёл John Stultz
Родитель d8ce1481ee
Коммит 516373b8b6
1 изменённых файлов: 2 добавлений и 3 удалений

Просмотреть файл

@ -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;