Re: [PATCH] x86: add apic probe for genapic 64bit v2

From: Yinghai Lu
Date: Tue Jul 22 2008 - 14:40:49 EST


On Tue, Jul 22, 2008 at 11:10 AM, Suresh Siddha
<suresh.b.siddha@xxxxxxxxx> wrote:
> On Tue, Jul 22, 2008 at 11:05:17AM -0700, Yinghai Lu wrote:
>> On Tue, Jul 22, 2008 at 10:57 AM, Suresh Siddha
>> <suresh.b.siddha@xxxxxxxxx> wrote:
>> > Yinghai, though not directly realted to this probe cleanup, what is this
>> > 'max_physical_apicid' doing.
>> >
>> > I don't understand the need for this commit.
>> >
>> >> commit e0da33646826b66ef933d47ea2fb7a693fd849bf
>> >> Author: Yinghai Lu <yhlu.kernel@xxxxxxxxx>
>> >> Date: Sun Jun 8 18:29:22 2008 -0700
>> >>
>> >> x86: introduce max_physical_apicid for bigsmp switching
>> >>
>> >> a multi-socket test-system with 3 or 4 ioapics, when 4 dualcore cpus or
>> >> 2 quadcore cpus installed, needs to switch to bigsmp or physflat.
>> >>
>> >> CPU apic id is [4,11] instead of [0,7], and we need to check max apic
>> >> id instead of cpu numbers.
>> >
>> > for logical flat, it really shouldn't matter how large the physical apic id
>> > is. In logical flat, OS programs the LDR and the limitation is the
>> > number of cpu's which is '8'.
>>
>> before i clean up 32bit, 64bit already used max_physical_apicid to
>> check if need to switch to physflat.
>
> No. It was introduced by your commit e0da33646826b66ef933d47ea2fb7a693fd849bf
>
> we were using num_possible_cpus > 8 check before.

yes. 64bit is changed to use max_phys_apicid at same patch

>
>> for 32bit, if not switch to bigsmp, cpu with physical apic id >=8 can
>> not be started by BSP.
>
> why?

could be apic mode is set to phys flat mode by BIOS.

get
APIC error (0x40)...

that is the reason for introducing max_phys_apicid.
--
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/