Sending to wider audience. I originally sent this to only the people Andi had cc'd.
Andi posted two patches to clean up the logical package ID, and I posted a bug fix for systems which boot with less than than the maximum core count. If I take his changes into account the code base ends up with a significant cleanup. I am reposting his patches here. I boot tested this using max_cpus and nr_cpus, as well as booting on systems which panic without the fix in 3/3. ---8<--- Cleanup the logical package ID code by storing the logical package ID in the cpuinfo_x86 struct and calculating the maximum logical package ID after all the CPUs have been enumerated. Signed-off-by: Prarit Bhargava <[email protected]> Cc: Thomas Gleixner <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: "H. Peter Anvin" <[email protected]> Cc: [email protected] Cc: Peter Zijlstra <[email protected]> Cc: Andi Kleen <[email protected]> Cc: Dave Hansen <[email protected]> Cc: Piotr Luc <[email protected]> Cc: Kan Liang <[email protected]> Cc: Borislav Petkov <[email protected]> Cc: Stephane Eranian <[email protected]> Cc: Prarit Bhargava <[email protected]> Cc: Arvind Yadav <[email protected]> Cc: Andy Lutomirski <[email protected]> Cc: Christian Borntraeger <[email protected]> Cc: "Kirill A. Shutemov" <[email protected]> Cc: Tom Lendacky <[email protected]> Cc: He Chen <[email protected]> Cc: Mathias Krause <[email protected]> Cc: Tim Chen <[email protected]> Cc: Vitaly Kuznetsov <[email protected]> Andi Kleen (2): perf/x86/intel/uncore: Cache logical pkg id in uncore driver x86/topology: Avoid wasting 128k for package id array Prarit Bhargava (1): x86/smpboot: Fix __max_logical_packages estimate arch/x86/events/intel/uncore.c | 1 + arch/x86/events/intel/uncore.h | 1 + arch/x86/events/intel/uncore_snbep.c | 2 +- arch/x86/include/asm/processor.h | 6 +- arch/x86/kernel/smpboot.c | 113 +++++++++++------------------------ 5 files changed, 42 insertions(+), 81 deletions(-) -- 1.8.5.5

