• P
    x86/cpu: Strip any /proc/cpuinfo model name field whitespace · adafb98d
    Prarit Bhargava 提交于
    When comparing the 'model name' field of each core in
    /proc/cpuinfo it was noticed that there is a whitespace
    difference between the cores' model names.
    
    After some quick investigation it was noticed that the model
    name fields were actually different -- processor 0's model name
    field had trailing whitespace removed, while the other
    processors did not.
    
    Another way of seeing this behaviour is to convert spaces into
    underscores in the output of /proc/cpuinfo,
    
      [thetango@prarit ~]# grep "^model name" /proc/cpuinfo | uniq -c | sed 's/\ /_/g'
      ______1_model_name      :_AMD_Opteron(TM)_Processor_6272
      _____63_model_name      :_AMD_Opteron(TM)_Processor_6272_________________
    
    which shows the discrepancy.
    
    This occurs because the kernel calls strim() on cpu 0's
    x86_model_id field to output a pretty message to the console in
    print_cpu_info(), and as a result strips the whitespace at the
    end of the ->x86_model_id field.
    
    But, the ->x86_model_id field should be the same for the all
    identical CPUs in the box. Thus, we need to remove both leading
    and trailing whitespace.
    
    As a result, the print_cpu_info() output looks like
    
      smpboot: CPU0: AMD Opteron(TM) Processor 6272 (fam: 15, model: 01, stepping: 02)
    
    and the x86_model_id field is correct on all processors on AMD
    platforms:
    
      _____64_model_name      :_AMD_Opteron(TM)_Processor_6272
    
    Output is still correct on an Intel box:
    
      ____144_model_name      :_Intel(R)_Xeon(R)_CPU_E7-8890_v3_@_2.50GHz
    Signed-off-by: NPrarit Bhargava <prarit@redhat.com>
    Signed-off-by: NBorislav Petkov <bp@suse.de>
    Cc: Andy Lutomirski <luto@amacapital.net>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Brian Gerst <brgerst@gmail.com>
    Cc: Dave Hansen <dave.hansen@linux.intel.com>
    Cc: Denys Vlasenko <dvlasenk@redhat.com>
    Cc: Fenghua Yu <fenghua.yu@intel.com>
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Igor Mammedov <imammedo@redhat.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Link: http://lkml.kernel.org/r/1432050210-32036-1-git-send-email-prarit@redhat.com
    Link: http://lkml.kernel.org/r/1432628901-18044-15-git-send-email-bp@alien8.deSigned-off-by: NIngo Molnar <mingo@kernel.org>
    adafb98d
common.c 35.8 KB