linux/drivers/rtc
John Stultz bd729d72b4 rtc: Avoid setting alarm to a time in the past
In some cases at boot up, the RTC alarm may be set in the past,
but still have the enabled flag on. This was causing problems,
because we would then enqueue the alarm into the timerqueue,
but it would never fire. This would clog up the timerqueue
and keep other alarms from working.

The fix is to check the alarm against the current rtc time at
boot and avoid enqueueing the alarm if it is in the past.

Reported-by: NeilBrown <neilb@suse.de>
Tested-by: NeilBrown <neilb@suse.de>
Tested-by: Sander Eikelenboom <linux@eikelenboom.it>
Signed-off-by: John Stultz <john.stultz@linaro.org>
2012-01-26 19:41:30 -08:00
..
class.c Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2011-12-05 16:53:43 -08:00
hctosys.c
interface.c rtc: Avoid setting alarm to a time in the past 2012-01-26 19:41:30 -08:00
Kconfig Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-01-11 19:13:40 -08:00
Makefile drivers/rtc: add support for Qualcomm PMIC8xxx RTC 2011-07-25 20:57:17 -07:00
rtc-88pm860x.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ab3100.c
rtc-ab8500.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 2012-01-13 20:43:32 -08:00
rtc-at32ap700x.c
rtc-at91rm9200.c ARM: at91: make rm9200 rtc drivers soc independent 2011-11-28 22:50:39 +08:00
rtc-at91sam9.c
rtc-au1xxx.c
rtc-bfin.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-bq32k.c
rtc-bq4802.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-cmos.c drivers/rtc/rtc-cmos.c: fix broken NVRAM bank 2 writing 2012-01-10 16:30:52 -08:00
rtc-coh901331.c
rtc-core.h
rtc-davinci.c
rtc-dev.c
rtc-dm355evm.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds1216.c
rtc-ds1286.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds1302.c
rtc-ds1305.c rtc: Add module.h to implicit users in drivers/rtc 2011-10-31 19:31:28 -04:00
rtc-ds1307.c rtc: add initial support for mcp7941x parts 2011-11-02 16:06:58 -07:00
rtc-ds1374.c
rtc-ds1390.c
rtc-ds1511.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds1553.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds1672.c rtc: Add module.h to implicit users in drivers/rtc 2011-10-31 19:31:28 -04:00
rtc-ds1742.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds3232.c
rtc-ds3234.c
rtc-efi.c
rtc-em3027.c rtc: Add module.h to implicit users in drivers/rtc 2011-10-31 19:31:28 -04:00
rtc-ep93xx.c rtc: ep93xx: Fix 'rtc' may be used uninitialized warning 2011-08-10 15:54:24 -07:00
rtc-fm3130.c
rtc-generic.c
rtc-imxdi.c drivers/rtc/rtc-imxdi.c needs linux/sched.h 2011-09-14 18:09:37 -07:00
rtc-isl1208.c
rtc-isl12022.c rtc: Add module.h to implicit users in drivers/rtc 2011-10-31 19:31:28 -04:00
rtc-jz4740.c drivers/rtc/rtc-jz4740.c: make jz4740_rtc_driver static 2012-01-10 16:30:53 -08:00
rtc-lib.c rtc: Initialized rtc_time->tm_isdst 2011-08-26 17:26:35 -07:00
rtc-lpc32xx.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-m41t80.c rtc: m41t80: Workaround broken alarm functionality 2011-12-13 12:26:24 -08:00
rtc-m41t93.c drivers/rtc/: remove redundant spi driver bus initialization 2012-01-10 16:30:53 -08:00
rtc-m41t94.c drivers/rtc/: remove redundant spi driver bus initialization 2012-01-10 16:30:53 -08:00
rtc-m48t35.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-m48t59.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-m48t86.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-max6900.c
rtc-max6902.c drivers/rtc/: remove redundant spi driver bus initialization 2012-01-10 16:30:53 -08:00
rtc-max8925.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 2012-01-13 20:43:32 -08:00
rtc-max8998.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-mc13xxx.c drivers/rtc/rtc-mc13xxx.c: make mc13xxx_rtc_idtable static 2012-01-10 16:30:53 -08:00
rtc-mpc5121.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-mrst.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-msm6242.c
rtc-mv.c rtc: Add module.h to implicit users in drivers/rtc 2011-10-31 19:31:28 -04:00
rtc-mxc.c drivers/rtc/rtc-mxc.c: make alarm work 2012-01-10 16:30:52 -08:00
rtc-nuc900.c
rtc-omap.c rtc-omap: fix initialization of control register 2011-08-03 14:25:20 -10:00
rtc-pcap.c
rtc-pcf2123.c drivers/rtc/: remove redundant spi driver bus initialization 2012-01-10 16:30:53 -08:00
rtc-pcf8563.c rtc: Add module.h to implicit users in drivers/rtc 2011-10-31 19:31:28 -04:00
rtc-pcf8583.c
rtc-pcf50633.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-pl030.c rtc: pl030: Enable module alias autogeneration for AMBA drivers 2011-11-22 10:58:31 +00:00
rtc-pl031.c rtc: pl031: Enable module alias autogeneration for AMBA drivers 2011-11-22 10:58:32 +00:00
rtc-pm8xxx.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-proc.c
rtc-ps3.c
rtc-puv3.c rtc-puv3: solve section mismatch in rtc-puv3.c 2012-01-10 10:29:42 +08:00
rtc-pxa.c
rtc-r9701.c
rtc-rp5c01.c
rtc-rs5c313.c
rtc-rs5c348.c drivers/rtc/: remove redundant spi driver bus initialization 2012-01-10 16:30:53 -08:00
rtc-rs5c372.c rtc: Add module.h to implicit users in drivers/rtc 2011-10-31 19:31:28 -04:00
rtc-rv3029c2.c
rtc-rx8025.c
rtc-rx8581.c
rtc-s3c.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-s35390a.c
rtc-sa1100.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-sh.c
rtc-spear.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-starfire.c
rtc-stk17ta8.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-stmp3xxx.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-sun4v.c
rtc-sysfs.c
rtc-tegra.c drivers/rtc/rtc-tegra.c: properly initialize spinlock 2011-07-25 20:57:17 -07:00
rtc-test.c
rtc-tile.c
rtc-twl.c drivers/rtc/rtc-twl.c: add DT support for RTC inside twl4030/twl6030 2012-01-10 16:30:53 -08:00
rtc-tx4939.c rtc: Add module.h to implicit users in drivers/rtc 2011-10-31 19:31:28 -04:00
rtc-v3020.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-vr41xx.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-vt8500.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-wm831x.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-wm8350.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-x1205.c rtc: Add module.h to implicit users in drivers/rtc 2011-10-31 19:31:28 -04:00