diff options
Diffstat (limited to 'drivers/rtc/rtc-dev.c')
| -rw-r--r-- | drivers/rtc/rtc-dev.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/rtc/rtc-dev.c b/drivers/rtc/rtc-dev.c index 0a870b7e5c32..856cc1af40df 100644 --- a/drivers/rtc/rtc-dev.c +++ b/drivers/rtc/rtc-dev.c | |||
| @@ -221,7 +221,7 @@ static long rtc_dev_ioctl(struct file *file, | |||
| 221 | 221 | ||
| 222 | err = mutex_lock_interruptible(&rtc->ops_lock); | 222 | err = mutex_lock_interruptible(&rtc->ops_lock); |
| 223 | if (err) | 223 | if (err) |
| 224 | return -EBUSY; | 224 | return err; |
| 225 | 225 | ||
| 226 | /* check that the calling task has appropriate permissions | 226 | /* check that the calling task has appropriate permissions |
| 227 | * for certain ioctls. doing this check here is useful | 227 | * for certain ioctls. doing this check here is useful |
| @@ -432,6 +432,8 @@ static int rtc_dev_release(struct inode *inode, struct file *file) | |||
| 432 | #ifdef CONFIG_RTC_INTF_DEV_UIE_EMUL | 432 | #ifdef CONFIG_RTC_INTF_DEV_UIE_EMUL |
| 433 | clear_uie(rtc); | 433 | clear_uie(rtc); |
| 434 | #endif | 434 | #endif |
| 435 | rtc_irq_set_state(rtc, NULL, 0); | ||
| 436 | |||
| 435 | if (rtc->ops->release) | 437 | if (rtc->ops->release) |
| 436 | rtc->ops->release(rtc->dev.parent); | 438 | rtc->ops->release(rtc->dev.parent); |
| 437 | 439 | ||
