From: Arnd Bergmann Date: Tue, 20 May 2008 17:16:03 +0000 (+0200) Subject: ip27-rtc: BKL pushdown X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=b0e54f7c477ad24fa0d49baed942c5a5909c748b;p=deliverable%2Flinux.git ip27-rtc: BKL pushdown Signed-off-by: Arnd Bergmann --- diff --git a/drivers/char/ip27-rtc.c b/drivers/char/ip27-rtc.c index 86e6538a77b0..ec9d0443d92c 100644 --- a/drivers/char/ip27-rtc.c +++ b/drivers/char/ip27-rtc.c @@ -27,6 +27,7 @@ #include #include #include +#include #include #include #include @@ -163,15 +164,18 @@ static long rtc_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) static int rtc_open(struct inode *inode, struct file *file) { + lock_kernel(); spin_lock_irq(&rtc_lock); if (rtc_status & RTC_IS_OPEN) { spin_unlock_irq(&rtc_lock); + unlock_kernel(); return -EBUSY; } rtc_status |= RTC_IS_OPEN; spin_unlock_irq(&rtc_lock); + unlock_kernel(); return 0; }