Vladimir Zapolskiy
f501ed524b
rtc: s3c: balance state changes of wakeup flag
This change resolves a problem about unbalanced calls of
enable_irq_wakeup() and disable_irq_wakeup() for alarm interrupt.
Bug reproduction:
root@eb600:~# echo 0 > /sys/class/rtc/rtc0/wakealarm
WARNING: at kernel/irq/manage.c:361 set_irq_wake+0x7c/0xe4()
Unbalanced IRQ 46 wake disable
Modules linked in:
[<c0025708>] (unwind_backtrace+0x0/0xd8) from [<c003358c>] (warn_slowpath_common+0x44/0x5c)
[<c003358c>] (warn_slowpath_common+0x44/0x5c) from [<c00335dc>] (warn_slowpath_fmt+0x24/0x30)
[<c00335dc>] (warn_slowpath_fmt+0x24/0x30) from [<c0058c20>] (set_irq_wake+0x7c/0xe4)
[<c0058c20>] (set_irq_wake+0x7c/0xe4) from [<c01b5e80>] (s3c_rtc_setalarm+0xa8/0xb8)
[<c01b5e80>] (s3c_rtc_setalarm+0xa8/0xb8) from [<c01b47a0>] (rtc_set_alarm+0x60/0x74)
[<c01b47a0>] (rtc_set_alarm+0x60/0x74) from [<c01b5a98>] (rtc_sysfs_set_wakealarm+0xc8/0xd8)
[<c01b5a98>] (rtc_sysfs_set_wakealarm+0xc8/0xd8) from [<c01891ec>] (dev_attr_store+0x20/0x24)
[<c01891ec>] (dev_attr_store+0x20/0x24) from [<c00be934>] (sysfs_write_file+0x104/0x13c)
[<c00be934>] (sysfs_write_file+0x104/0x13c) from [<c0080e7c>] (vfs_write+0xb0/0x158)
[<c0080e7c>] (vfs_write+0xb0/0x158) from [<c0080fcc>] (sys_write+0x3c/0x68)
[<c0080fcc>] (sys_write+0x3c/0x68) from [<c0020ec0>] (ret_fast_syscall+0x0/0x28)
Signed-off-by: Vladimir Zapolskiy <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Cc: Ben Dooks <[email protected]>
Cc: Atul Dahiya <[email protected]>
Cc: Taekgyun Ko <[email protected]>
Cc: Kukjin Kim <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
2010-09-22 17:22:40 -07:00
..
2010-03-30 22:02:32 +09:00
2010-03-12 15:52:28 -08:00
2010-08-11 09:13:19 -07:00
2010-08-11 08:59:08 -07:00
2010-09-22 17:22:39 -07:00
2010-05-27 09:12:41 -07:00
2010-03-30 22:02:32 +09:00
2010-03-30 22:02:32 +09:00
2010-09-09 18:57:22 -07:00
2010-03-30 22:02:32 +09:00
2010-08-11 08:59:08 -07:00
2010-03-30 22:02:32 +09:00
2010-06-28 10:19:19 +10:00
2010-03-30 22:02:32 +09:00
2010-03-30 22:02:32 +09:00
2010-05-25 08:07:08 -07:00
2010-05-21 09:37:31 -07:00
2010-06-29 15:29:31 -07:00
2010-06-03 11:33:58 +02:00
2010-03-30 22:02:32 +09:00
2010-05-21 09:37:31 -07:00
2010-05-21 09:37:31 -07:00
2010-05-21 09:37:31 -07:00
2010-08-11 08:59:08 -07:00
2010-03-30 22:02:32 +09:00
2010-08-11 08:59:07 -07:00
2010-08-11 08:59:07 -07:00
2010-05-25 08:07:08 -07:00
2010-08-11 08:59:08 -07:00
2010-08-05 13:26:17 +01:00
2010-09-09 18:57:24 -07:00
2010-03-30 22:02:32 +09:00
2010-08-11 08:59:07 -07:00
2010-08-11 08:59:07 -07:00
2010-08-11 08:59:07 -07:00
2010-03-30 22:02:32 +09:00
2010-03-30 22:02:32 +09:00
2010-08-06 09:25:50 -06:00
2010-03-30 22:02:32 +09:00
2010-03-30 22:02:32 +09:00
2010-08-11 08:59:06 -07:00
2010-08-11 08:59:08 -07:00
2010-05-19 11:37:20 -07:00
2010-03-30 22:02:32 +09:00
2010-03-30 22:02:32 +09:00
2010-08-11 08:59:06 -07:00
2010-03-30 22:02:32 +09:00
2010-03-30 22:02:32 +09:00
2010-09-09 18:57:24 -07:00
2010-08-11 08:59:07 -07:00
2010-08-11 08:59:08 -07:00
2010-03-30 22:02:32 +09:00
2010-03-30 22:02:32 +09:00
2010-07-19 11:21:26 +02:00
2010-07-27 14:32:06 -07:00
2010-09-22 17:22:40 -07:00
2010-06-03 11:33:58 +02:00
2010-03-30 22:02:32 +09:00
2010-05-21 09:37:31 -07:00
2010-03-30 22:02:32 +09:00
2010-03-12 15:52:28 -08:00
2010-03-06 11:26:47 -08:00
2010-05-21 09:37:31 -07:00
2010-03-30 22:02:32 +09:00
2010-05-25 08:07:08 -07:00
2010-03-07 22:16:56 +01:00