diff options
author | Borislav Petkov <bp@amd64.org> | 2011-02-14 12:14:51 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2011-02-14 21:03:19 -0500 |
commit | 9e81509efc4fefcdd75cc6a4121672fa71ae8745 (patch) | |
tree | 49326656ff61876e62cda0712b41ef99643af5cd /arch/x86/kernel/cpu/amd.c | |
parent | 691269f0d918cd72454c254f97722f194c07b9a8 (diff) |
x86, amd: Initialize variable properly
Commit d518573de63f ("x86, amd: Normalize compute unit IDs on
multi-node processors") introduced compute unit normalization
but causes a compiler warning:
arch/x86/kernel/cpu/amd.c: In function 'amd_detect_cmp':
arch/x86/kernel/cpu/amd.c:268: warning: 'cores_per_cu' may be used uninitialized in this function
arch/x86/kernel/cpu/amd.c:268: note: 'cores_per_cu' was declared here
The compiler is right - initialize it with a proper value.
Also, fix up a comment while at it.
Reported-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
Cc: Andreas Herrmann <andreas.herrmann3@amd.com>
LKML-Reference: <20110214171451.GB10076@kryptos.osrc.amd.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/cpu/amd.c')
-rw-r--r-- | arch/x86/kernel/cpu/amd.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c index 990cc4861586..589bdd7a4cff 100644 --- a/arch/x86/kernel/cpu/amd.c +++ b/arch/x86/kernel/cpu/amd.c | |||
@@ -261,7 +261,7 @@ static int __cpuinit nearby_node(int apicid) | |||
261 | #ifdef CONFIG_X86_HT | 261 | #ifdef CONFIG_X86_HT |
262 | static void __cpuinit amd_get_topology(struct cpuinfo_x86 *c) | 262 | static void __cpuinit amd_get_topology(struct cpuinfo_x86 *c) |
263 | { | 263 | { |
264 | u32 nodes, cores_per_cu; | 264 | u32 nodes, cores_per_cu = 1; |
265 | u8 node_id; | 265 | u8 node_id; |
266 | int cpu = smp_processor_id(); | 266 | int cpu = smp_processor_id(); |
267 | 267 | ||
@@ -276,7 +276,7 @@ static void __cpuinit amd_get_topology(struct cpuinfo_x86 *c) | |||
276 | /* get compute unit information */ | 276 | /* get compute unit information */ |
277 | smp_num_siblings = ((ebx >> 8) & 3) + 1; | 277 | smp_num_siblings = ((ebx >> 8) & 3) + 1; |
278 | c->compute_unit_id = ebx & 0xff; | 278 | c->compute_unit_id = ebx & 0xff; |
279 | cores_per_cu = ((ebx >> 8) & 3) + 1; | 279 | cores_per_cu += ((ebx >> 8) & 3); |
280 | } else if (cpu_has(c, X86_FEATURE_NODEID_MSR)) { | 280 | } else if (cpu_has(c, X86_FEATURE_NODEID_MSR)) { |
281 | u64 value; | 281 | u64 value; |
282 | 282 | ||
@@ -298,7 +298,7 @@ static void __cpuinit amd_get_topology(struct cpuinfo_x86 *c) | |||
298 | /* store NodeID, use llc_shared_map to store sibling info */ | 298 | /* store NodeID, use llc_shared_map to store sibling info */ |
299 | per_cpu(cpu_llc_id, cpu) = node_id; | 299 | per_cpu(cpu_llc_id, cpu) = node_id; |
300 | 300 | ||
301 | /* core id to be in range from 0 to (cores_per_node - 1) */ | 301 | /* core id has to be in the [0 .. cores_per_node - 1] range */ |
302 | c->cpu_core_id %= cores_per_node; | 302 | c->cpu_core_id %= cores_per_node; |
303 | c->compute_unit_id %= cus_per_node; | 303 | c->compute_unit_id %= cus_per_node; |
304 | } | 304 | } |