Re: [PATCH 1/2] x86/smpboot: Check APIC ID before setting up default routing

From: Wei, Jiangang
Date: Thu Aug 18 2016 - 06:15:58 EST


On Thu, 2016-08-18 at 11:47 +0200, Ingo Molnar wrote:
> * Wei Jiangang <weijg.fnst@xxxxxxxxxxxxxx> wrote:
>
> > Check the boot APIC ID firstly,
> > and then setup the default routing of APIC looks better.
> >
> > And move default_setup_apic_routing() close to apic_bsp_setup(),
> > which staying in step with the codes in APIC_init_uniprocessor().
> >
> > Signed-off-by: Wei Jiangang <weijg.fnst@xxxxxxxxxxxxxx>
> > ---
> > arch/x86/kernel/smpboot.c | 3 +--
> > 1 file changed, 1 insertion(+), 2 deletions(-)
>
> If it's not a bug then please clearly note so in the changelog and
> explain why the change results in better code.

It's not a bug.
The combination of default_setup_apic_routing() and apic_bsp_setup() is
used to enable APIC mode. If the return of read_apic_id() is not equal
to boot_cpu_physical_apicid, it means the APIC ID of current CPUâs local
APIC is unexpected and enable APIC mode maybe fail. so no need to set
up the apic routing. That's why I want to move
default_setup_apic_routing() behind checking the boot APIC ID.

Sorry for obscure commit message. I will improve it in next version.

>
> If it's fixing a bug/misfeature then please fix the changelog to
> conform to the standard changelog style:
>
> - first describe the symptoms of the bug - how does a user notice?
>
> - then describe how the code behaves today and how that is causing the bug
>
> - and then only describe how it's fixed.

Thanks for your detailed explanation. I'll keep in my mind.
>
> Thanks,
>
> Ingo
>
>