Re: [PATCH v3] x86: under bios control, restore AP's APIC_LVTTHMRto the BSP value

From: Yong Wang
Date: Mon Nov 09 2009 - 02:52:33 EST


On Mon, Nov 09, 2009 at 08:08:44AM +0100, Ingo Molnar wrote:
>
> * Yong Wang <yong.y.wang@xxxxxxxxxxxxxxx> wrote:
>
> > Changes since v2:
> > Incorporate Ingo's comments to get BSP's thermal init value in a
> > 'boot-CPU-only' function.
>
> > diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
> > index e09f0e2..2323771 100644
> > --- a/arch/x86/kernel/setup.c
> > +++ b/arch/x86/kernel/setup.c
> > @@ -1002,6 +1002,7 @@ void __init setup_arch(char **cmdline_p)
> >
> > init_apic_mappings();
> > ioapic_init_mappings();
> > + get_bsp_lvtthmr_init();
> >
> > /* need to wait for io_apic is mapped */
> > probe_nr_irqs_gsi();
>
> Ok - it's almost good in this form - it would be nice to name the new
> function something more generic, like mcheck_intel_therm_init(), and
> call it from arch/x86/kernel/cpu/mcheck/mce.c's mcheck_init() function.
>

I just checked that arch/x86/kernel/cpu/mcheck/mce.c's mcheck_init()
will not only run on BSP but also on APs. I put get_bsp_lvtthmr_init()
right behind init_apic_mappings() because init_apic_mappings() will
setup the fixmap for LAPIC so that I can call apic_read from inside
get_bsp_lvtthmr_init().

I can rename get_bsp_lvtthmr_init() to mcheck_intel_therm_init() to make
it more generic as we might add more stuff into it in the future.

Thanks for your comments.
-Yong
--
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/