Skip to content

Commit

Permalink
[PATCH] x86_64: Use local APIC ID from local APIC instead of CPUID
Browse files Browse the repository at this point in the history
vSMPowered systems use apic_cluster too.  Forcing apic_physflat works
on these systems too, but only if we change phys_pkg_id to use
hard_smp_prcoessor_id() instead of cpuid_ebx.  I am guessing other
multichassi cluster systems would need this too.

Signed-off-by: ravikiran thirumalai <kiran@scalex86.org>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
ravikiran thirumalai authored and Linus Torvalds committed Jun 26, 2006
1 parent 7c393e7 commit 0f4fdb7
Showing 1 changed file with 1 addition and 4 deletions.
5 changes: 1 addition & 4 deletions arch/x86_64/kernel/genapic_flat.c
Original file line number Diff line number Diff line change
Expand Up @@ -108,10 +108,7 @@ static unsigned int flat_cpu_mask_to_apicid(cpumask_t cpumask)

static unsigned int phys_pkg_id(int index_msb)
{
u32 ebx;

ebx = cpuid_ebx(1);
return ((ebx >> 24) & 0xFF) >> index_msb;
return hard_smp_processor_id() >> index_msb;
}

struct genapic apic_flat = {
Expand Down

0 comments on commit 0f4fdb7

Please sign in to comment.