Messages in this thread | | | Date | Mon, 9 Nov 2009 15:25:28 +0800 | From | Yong Wang <> | Subject | Re: [PATCH v3] x86: under bios control, restore AP's APIC_LVTTHMR to the BSP value |
| |
On Mon, Nov 09, 2009 at 08:08:44AM +0100, Ingo Molnar wrote: > > * Yong Wang <yong.y.wang@linux.intel.com> 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
| |