x86: fix RTC_AIE with CONFIG_HPET_EMULATE_RTC
authorBernhard Walle <bwalle@suse.de>
Tue, 15 Jan 2008 15:44:38 +0000 (16:44 +0100)
committerIngo Molnar <mingo@elte.hu>
Tue, 15 Jan 2008 15:44:38 +0000 (16:44 +0100)
commit8ee291f87c5dcebcf9c3a0ee4e021586897db364
treee25b0847beb1834f6166458d7eaf1ae4bfb0944d
parentd43a3312c77eb6bbf71fbadefb1683f6d197bf91
x86: fix RTC_AIE with CONFIG_HPET_EMULATE_RTC

In the current code, RTC_AIE doesn't work if the RTC relies on
CONFIG_HPET_EMULATE_RTC because the code sets the RTC_AIE flag in
hpet_set_rtc_irq_bit().  The interrupt handles does accidentally check
for RTC_PIE and not RTC_AIE when comparing the time which was set in
hpet_set_alarm_time().

I now verified on a test system here that without the patch applied,
the attached test program fails on a system that has HPET with
2.6.24-rc7-default. That's not critical since I guess the problem has
been there for several kernel releases, but as the fix is quite
obvious.

Configuration is CONFIG_RTC=y and CONFIG_HPET_EMULATE_RTC=y.

Signed-off-by: Bernhard Walle <bwalle@suse.de>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/hpet.c