Re: [RFC][PATCH 2/3]i386,x86-64 Handle missing local APIC timer interrupts on C3 state

Venkatesh Pallipadi
2005-12-09T23:06:53Z

On Fri, Dec 09, 2005 at 07:07:39PM +0100, Andi Kleen wrote:
> Just a quick comment - didn't review the full patch.
>
> > +#ifdef ARCH_APICTIMER_STOPS_ON_C3
> > + if (c->x86_vendor == X86_VENDOR_INTEL) {
> > + on_each_cpu(switch_APIC_timer_to_ipi,
> > + &mask, 1, 1);
> > + }
> > +#endif
>
> Better make it a runtime variable instead of an ifdef with a boot option.
> I found at least one non Intel system so far with the same issue
> (although it wasn't multi processor)

Actually, that particular ifdef ARCH_APICTIMER_STOPS_ON_C3 is always set for
i386 and x86-64 and local APIC is enabled. I only added that ifdef to skip
this code for IA-64, which can also use acpi processor_idle.c.

For any other CPU in i386 or x86-64, we can just add runtime check along with
VENDOR_INTEL.

Thanks,
Venki