+++ /dev/null
-From 6d6daa20945f3f598e56e18d1f926c08754f5801 Mon Sep 17 00:00:00 2001
-From: Prarit Bhargava <prarit@redhat.com>
-Date: Thu, 5 Jan 2017 10:09:25 -0500
-Subject: perf/x86/intel/uncore: Fix hardcoded socket 0 assumption in the Haswell init code
-
-From: Prarit Bhargava <prarit@redhat.com>
-
-commit 6d6daa20945f3f598e56e18d1f926c08754f5801 upstream.
-
-hswep_uncore_cpu_init() uses a hardcoded physical package id 0 for the boot
-cpu. This works as long as the boot CPU is actually on the physical package
-0, which is normaly the case after power on / reboot.
-
-But it fails with a NULL pointer dereference when a kdump kernel is started
-on a secondary socket which has a different physical package id because the
-locigal package translation for physical package 0 does not exist.
-
-Use the logical package id of the boot cpu instead of hard coded 0.
-
-[ tglx: Rewrote changelog once more ]
-
-Fixes: cf6d445f6897 ("perf/x86/uncore: Track packages, not per CPU data")
-Signed-off-by: Prarit Bhargava <prarit@redhat.com>
-Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
-Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
-Cc: Borislav Petkov <bp@suse.de>
-Cc: H. Peter Anvin <hpa@zytor.com>
-Cc: Harish Chegondi <harish.chegondi@intel.com>
-Cc: Jiri Olsa <jolsa@redhat.com>
-Cc: Kan Liang <kan.liang@intel.com>
-Cc: Linus Torvalds <torvalds@linux-foundation.org>
-Cc: Peter Zijlstra <peterz@infradead.org>
-Cc: Stephane Eranian <eranian@google.com>
-Cc: Thomas Gleixner <tglx@linutronix.de>
-Cc: Vince Weaver <vincent.weaver@maine.edu>
-Link: http://lkml.kernel.org/r/1483628965-2890-1-git-send-email-prarit@redhat.com
-Signed-off-by: Ingo Molnar <mingo@kernel.org>
-Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- arch/x86/events/intel/uncore_snbep.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/arch/x86/events/intel/uncore_snbep.c
-+++ b/arch/x86/events/intel/uncore_snbep.c
-@@ -2686,7 +2686,7 @@ static struct intel_uncore_type *hswep_m
-
- void hswep_uncore_cpu_init(void)
- {
-- int pkg = topology_phys_to_logical_pkg(0);
-+ int pkg = boot_cpu_data.logical_proc_id;
-
- if (hswep_uncore_cbox.num_boxes > boot_cpu_data.x86_max_cores)
- hswep_uncore_cbox.num_boxes = boot_cpu_data.x86_max_cores;