Skip to content

Commit

Permalink
x86: apic_is_clustered_box to indicate unsynched TSC's on multiboard …
Browse files Browse the repository at this point in the history
…vSMP systems

Indicate TSCs are unreliable as time sources if the platform is
a multi chassi ScaleMP vSMPowered machine.

Signed-off-by: Ravikiran Thirumalai <kiran@scalex86.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Ravikiran G Thirumalai authored and Ingo Molnar committed Apr 17, 2008
1 parent 9f6d855 commit 1cb6848
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion arch/x86/kernel/apic_64.c
Original file line number Diff line number Diff line change
Expand Up @@ -1209,7 +1209,7 @@ __cpuinit int apic_is_clustered_box(void)
* will be [4, 0x23] or [8, 0x27] could be thought to
* vsmp box still need checking...
*/
if (!is_vsmp_box() && (boot_cpu_data.x86_vendor == X86_VENDOR_AMD))
if ((boot_cpu_data.x86_vendor == X86_VENDOR_AMD) && !is_vsmp_box())
return 0;

bios_cpu_apicid = x86_bios_cpu_apicid_early_ptr;
Expand Down Expand Up @@ -1249,6 +1249,12 @@ __cpuinit int apic_is_clustered_box(void)
++zeros;
}

/* ScaleMP vSMPowered boxes have one cluster per board and TSCs are
* not guaranteed to be synced between boards
*/
if (is_vsmp_box() && clusters > 1)
return 1;

/*
* If clusters > 2, then should be multi-chassis.
* May have to revisit this when multi-core + hyperthreaded CPUs come
Expand Down

0 comments on commit 1cb6848

Please sign in to comment.