From mboxrd@z Thu Jan 1 00:00:00 1970 From: Keir Fraser Subject: Re: [PATCH] x86/HPET: don't disable interrupt delivery right after setting it up Date: Thu, 27 Sep 2012 16:28:15 +0100 Message-ID: References: <50648161020000780009E418@nat28.tlf.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <50648161020000780009E418@nat28.tlf.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Jan Beulich , xen-devel List-Id: xen-devel@lists.xenproject.org On 27/09/2012 15:40, "Jan Beulich" wrote: > We shouldn't clear HPET_TN_FSB right after we (indirectly, via > request_irq()) enabled it for the channels we intend to use for > broadcasts. > > This fixes a regression introduced by c/s 25103:0b0e42dc4f0a. > > Signed-off-by: Jan Beulich Acked-by: Keir Fraser > --- > This fixes the MWAIT idle driver problem on the box that I was able to > (artificially) reproduce it with. Hence I subsequently intend to revert > 25960:6bf8b882df8f, but I'm not intending to do this before getting a > push there. > > I'm surprised that this didn't hit anyone so far with the ACPI-based > idle driver... > > --- 2012-09-21.orig/xen/arch/x86/hpet.c 2012-09-27 16:10:35.000000000 +0200 > +++ 2012-09-21/xen/arch/x86/hpet.c 2012-09-27 16:10:07.000000000 +0200 > @@ -533,7 +533,7 @@ void __init hpet_broadcast_init(void) > { > /* set HPET Tn as oneshot */ > cfg = hpet_read32(HPET_Tn_CFG(hpet_events[i].idx)); > - cfg &= ~(HPET_TN_LEVEL | HPET_TN_PERIODIC | HPET_TN_FSB); > + cfg &= ~(HPET_TN_LEVEL | HPET_TN_PERIODIC); > cfg |= HPET_TN_ENABLE | HPET_TN_32BIT; > hpet_write32(cfg, HPET_Tn_CFG(hpet_events[i].idx)); > > @@ -590,7 +590,7 @@ void hpet_broadcast_resume(void) > > /* set HPET Tn as oneshot */ > cfg = hpet_read32(HPET_Tn_CFG(hpet_events[i].idx)); > - cfg &= ~(HPET_TN_LEVEL | HPET_TN_PERIODIC | HPET_TN_FSB); > + cfg &= ~(HPET_TN_LEVEL | HPET_TN_PERIODIC); > cfg |= HPET_TN_ENABLE | HPET_TN_32BIT; > hpet_write32(cfg, HPET_Tn_CFG(hpet_events[i].idx)); > > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel