lkml.org 
[lkml]   [2011]   [Feb]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip:x86/amd-nb] x86, amd: Initialize variable properly
    Commit-ID:  9e81509efc4fefcdd75cc6a4121672fa71ae8745
    Gitweb: http://git.kernel.org/tip/9e81509efc4fefcdd75cc6a4121672fa71ae8745
    Author: Borislav Petkov <bp@amd64.org>
    AuthorDate: Mon, 14 Feb 2011 18:14:51 +0100
    Committer: Ingo Molnar <mingo@elte.hu>
    CommitDate: Tue, 15 Feb 2011 03:03:19 +0100

    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>
    ---
    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 990cc48..589bdd7 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)
    #ifdef CONFIG_X86_HT
    static void __cpuinit amd_get_topology(struct cpuinfo_x86 *c)
    {
    - u32 nodes, cores_per_cu;
    + u32 nodes, cores_per_cu = 1;
    u8 node_id;
    int cpu = smp_processor_id();

    @@ -276,7 +276,7 @@ static void __cpuinit amd_get_topology(struct cpuinfo_x86 *c)
    /* get compute unit information */
    smp_num_siblings = ((ebx >> 8) & 3) + 1;
    c->compute_unit_id = ebx & 0xff;
    - cores_per_cu = ((ebx >> 8) & 3) + 1;
    + cores_per_cu += ((ebx >> 8) & 3);
    } else if (cpu_has(c, X86_FEATURE_NODEID_MSR)) {
    u64 value;

    @@ -298,7 +298,7 @@ static void __cpuinit amd_get_topology(struct cpuinfo_x86 *c)
    /* store NodeID, use llc_shared_map to store sibling info */
    per_cpu(cpu_llc_id, cpu) = node_id;

    - /* core id to be in range from 0 to (cores_per_node - 1) */
    + /* core id has to be in the [0 .. cores_per_node - 1] range */
    c->cpu_core_id %= cores_per_node;
    c->compute_unit_id %= cus_per_node;
    }

    \
     
     \ /
      Last update: 2011-02-15 04:13    [W:0.034 / U:0.412 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site