Re: [PATCH] x86: do_boot_cpu - check for ESR apic registerpresence before touching

From: Cyrill Gorcunov
Date: Mon Sep 15 2008 - 12:22:40 EST


[Yinghai Lu - Mon, Sep 15, 2008 at 09:12:37AM -0700]
| On Mon, Sep 15, 2008 at 8:05 AM, Cyrill Gorcunov <gorcunov@xxxxxxxxx> wrote:
| > We should check first if there is ESR register before read/write it.
| >
| > Signed-off-by: Cyrill Gorcunov <gorcunov@xxxxxxxxx>
| > ---
| >
| > Please review and test if possible. Thanks.
| >
| > Index: linux-2.6.git/arch/x86/kernel/smpboot.c
| > ===================================================================
| > --- linux-2.6.git.orig/arch/x86/kernel/smpboot.c 2008-09-14 21:49:36.000000000 +0400
| > +++ linux-2.6.git/arch/x86/kernel/smpboot.c 2008-09-15 18:30:37.000000000 +0400
| > @@ -893,8 +893,10 @@ do_rest:
| > /*
| > * Be paranoid about clearing APIC errors.
| > */
| > - apic_write(APIC_ESR, 0);
| > - apic_read(APIC_ESR);
| > + if (APIC_INTEGRATED(apic_version[phys_apicid])) {
| > + apic_write(APIC_ESR, 0);
| > + apic_read(APIC_ESR);
| > + }
| > }
| >
| > /*
| >
|
| maybe unrelated. Do we need to keep apic_version array?
|
| YH
|

as I see ACPI/MP parsing code use it - actually I think we could
bring another variable - but don't think it worth it. Anyway
we have to get APIC info from these tables and save it somwhere
maybe in this array or maybe in another variable. Or you mean
anything else that I missed?

- Cyrill -
--
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/