Skip to content

Commit

Permalink
x86/cpu: Move cu_id into topology info
Browse files Browse the repository at this point in the history
No functional change.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Juergen Gross <jgross@suse.com>
Tested-by: Sohil Mehta <sohil.mehta@intel.com>
Tested-by: Michael Kelley <mikelley@microsoft.com>
Tested-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Zhang Rui <rui.zhang@intel.com>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/20230814085112.628405546@linutronix.de
  • Loading branch information
KAGA-KOKO committed Oct 10, 2023
1 parent e952563 commit e3c0c5d
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 6 deletions.
4 changes: 3 additions & 1 deletion arch/x86/include/asm/processor.h
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,9 @@ struct cpuinfo_topology {
// Physical die ID on AMD, Relative on Intel
u32 die_id;

// Compute unit ID - AMD specific
u32 cu_id;

// Core ID relative to the package
u32 core_id;
};
Expand All @@ -110,7 +113,6 @@ struct cpuinfo_x86 {
__u8 x86_phys_bits;
/* CPUID returned core id bits: */
__u8 x86_coreid_bits;
__u8 cu_id;
/* Max extended CPUID function supported: */
__u32 extended_cpuid_level;
/* Maximum supported CPUID level, -1=no CPUID: */
Expand Down
2 changes: 1 addition & 1 deletion arch/x86/kernel/cpu/amd.c
Original file line number Diff line number Diff line change
Expand Up @@ -413,7 +413,7 @@ static void amd_get_topology(struct cpuinfo_x86 *c)
c->topo.die_id = ecx & 0xff;

if (c->x86 == 0x15)
c->cu_id = ebx & 0xff;
c->topo.cu_id = ebx & 0xff;

if (c->x86 >= 0x17) {
c->topo.core_id = ebx & 0xff;
Expand Down
2 changes: 1 addition & 1 deletion arch/x86/kernel/cpu/common.c
Original file line number Diff line number Diff line change
Expand Up @@ -1829,7 +1829,7 @@ static void identify_cpu(struct cpuinfo_x86 *c)
c->x86_model_id[0] = '\0'; /* Unset */
c->x86_max_cores = 1;
c->x86_coreid_bits = 0;
c->cu_id = 0xff;
c->topo.cu_id = 0xff;
#ifdef CONFIG_X86_64
c->x86_clflush_size = 64;
c->x86_phys_bits = 36;
Expand Down
6 changes: 3 additions & 3 deletions arch/x86/kernel/smpboot.c
Original file line number Diff line number Diff line change
Expand Up @@ -482,9 +482,9 @@ static bool match_smt(struct cpuinfo_x86 *c, struct cpuinfo_x86 *o)
if (c->topo.core_id == o->topo.core_id)
return topology_sane(c, o, "smt");

if ((c->cu_id != 0xff) &&
(o->cu_id != 0xff) &&
(c->cu_id == o->cu_id))
if ((c->topo.cu_id != 0xff) &&
(o->topo.cu_id != 0xff) &&
(c->topo.cu_id == o->topo.cu_id))
return topology_sane(c, o, "smt");
}

Expand Down

0 comments on commit e3c0c5d

Please sign in to comment.