x86/debug: Dump family, model, stepping of the boot CPU
authorBorislav Petkov <borislav.petkov@amd.com>
Fri, 14 Sep 2012 16:37:46 +0000 (18:37 +0200)
committerIngo Molnar <mingo@kernel.org>
Wed, 19 Sep 2012 15:12:01 +0000 (17:12 +0200)
When acting on a user bug report, we find ourselves constantly
asking for /proc/cpuinfo in order to know the exact family,
model, stepping of the CPU in question.

Instead of having to ask this, add this to dmesg so that it is
visible and no ambiguities can ensue from looking at the
official name string of the CPU coming from CPUID and trying
to map it to f/m/s.

Output then looks like this:

[    0.146041] smpboot: CPU0: AMD FX(tm)-8100 Eight-Core Processor (fam: 15, model: 01, stepping: 02)

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
Cc: Andreas Herrmann <andreas.herrmann3@amd.com>
Link: http://lkml.kernel.org/r/1347640666-13638-1-git-send-email-bp@amd64.org
[ tweaked it minimally to add commas. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/kernel/cpu/common.c

index a5fbc3c5fccc5e60d61d9ec8f1d3f9f60a2a0467..1cc48ff91cb3e3524c070fd0154c416a8cfc8e70 100644 (file)
@@ -1023,14 +1023,16 @@ void __cpuinit print_cpu_info(struct cpuinfo_x86 *c)
                printk(KERN_CONT "%s ", vendor);
 
        if (c->x86_model_id[0])
-               printk(KERN_CONT "%s", c->x86_model_id);
+               printk(KERN_CONT "%s", strim(c->x86_model_id));
        else
                printk(KERN_CONT "%d86", c->x86);
 
+       printk(KERN_CONT " (fam: %02x, model: %02x", c->x86, c->x86_model);
+
        if (c->x86_mask || c->cpuid_level >= 0)
-               printk(KERN_CONT " stepping %02x\n", c->x86_mask);
+               printk(KERN_CONT ", stepping: %02x)\n", c->x86_mask);
        else
-               printk(KERN_CONT "\n");
+               printk(KERN_CONT ")\n");
 
        print_cpu_msr(c);
 }