[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20091014055639.GA784@elte.hu>
Date: Wed, 14 Oct 2009 07:56:39 +0200
From: Ingo Molnar <mingo@...e.hu>
To: akpm@...ux-foundation.org
Cc: mm-commits@...r.kernel.org, maximlevitsky@...il.com,
david-b@...bell.net, hpa@...or.com, rjw@...k.pl,
tglx@...utronix.de, linux-kernel@...r.kernel.org,
"Pallipadi, Venkatesh" <venkatesh.pallipadi@...el.com>,
Suresh Siddha <suresh.b.siddha@...el.com>
Subject: Re: + rtc-disable-hpet-emulation-on-suspend.patch added to -mm tree
* akpm@...ux-foundation.org <akpm@...ux-foundation.org> wrote:
> ------------------------------------------------------
> Subject: rtc: disable hpet emulation on suspend
> From: Maxim Levitsky <maximlevitsky@...il.com>
>
> I noticed that rtc wont generate interrupts after a resume from disk.
> Here hpet rtc emulation is used.
>
> Problem is that rtc hpet comparator, isn't reinitialized after resume.
> Easiest way to solve this, is always mask all hpet interrupts on suspend
> This is triggered, when suspending with alarm set.
>
>
> Otherwise, hpet driver will think it doesn't need to reinitialize
> the rtc comparator, thus rtc interrupts won't work.
>
> This emulation isn't need for wakealarm.
> - hpet_mask_rtc_irq_bit(mask);
>
> + /* shut down hpet emulation - we don't need it for alarm */
> + hpet_mask_rtc_irq_bit(RTC_PIE|RTC_AIE|RTC_UIE);
> cmos_checkintr(cmos, tmp);
Would be nice to also unconditionally reinitialize the hpet/rtc after
resume - regardless of what state we left it in.
Also, are you sure this does not break things like
CONFIG_PM_TEST_SUSPEND=y which rely on wakealarm?
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists