Re: [BUG] IO-APIC + timer doesn't work!

From: Ingo Molnar
Date: Sat Apr 18 2009 - 16:47:17 EST



* Jeff Mahoney <jeffm@xxxxxxxx> wrote:

> > Hmmmmm. That somehow reminds me of what I thought I had to fix in the
> > HPET emulation of QEMU just recently [1] - because of 2.6.30-rc's behavior.
> >
> > Could you try if writing 'delta' a second time makes any difference on
> > that box?
> >
> > diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
> > index 648b3a2..523d72b 100644
> > --- a/arch/x86/kernel/hpet.c
> > +++ b/arch/x86/kernel/hpet.c
> > @@ -324,6 +324,7 @@ static void hpet_set_mode(enum clock_event_mode mode,
> > HPET_TN_SETVAL | HPET_TN_32BIT;
> > hpet_writel(cfg, HPET_Tn_CFG(timer));
> > hpet_writel((unsigned long) delta, HPET_Tn_CMP(timer));
> > + hpet_writel((unsigned long) delta, HPET_Tn_CMP(timer));
> > hpet_start_counter();
> > hpet_print_config();
> > break;
> >
>
> Thanks, Jan.
>
> That fixed it for me.

I've queued it up (and i've got a test-system that might be affected
by a similar problem - it shows a similar crash very rarely), but it
would be nice to know why this duplicate writeout makes a
difference. Jan?

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/