• Kan Liang's avatar
    perf/x86/intel/uncore: Fix hardcoded index of Broadwell extra PCI devices · 156c8b58
    Kan Liang authored
    Masayoshi Mizuma reported that a warning message is shown while a CPU is
    hot-removed on Broadwell servers:
    
      WARNING: CPU: 126 PID: 6 at arch/x86/events/intel/uncore.c:988
      uncore_pci_remove+0x10b/0x150
      Call Trace:
       pci_device_remove+0x42/0xd0
       device_release_driver_internal+0x148/0x220
       pci_stop_bus_device+0x76/0xa0
       pci_stop_root_bus+0x44/0x60
       acpi_pci_root_remove+0x1f/0x80
       acpi_bus_trim+0x57/0x90
       acpi_bus_trim+0x2e/0x90
       acpi_device_hotplug+0x2bc/0x4b0
       acpi_hotplug_work_fn+0x1a/0x30
       process_one_work+0x174/0x3a0
       worker_thread+0x4c/0x3d0
       kthread+0xf8/0x130
    
    This bug was introduced by:
    
      commit 15a3e845 ("perf/x86/intel/uncore: Fix SBOX support for Broadwell CPUs")
    
    The index of "QPI Port 2 filter" was hardcode to 2, but this conflicts with the
    index of "PCU.3" which is "HSWEP_PCI_PCU_3", which equals to 2 as well.
    
    To fix the conflict, the hardcoded index needs to be cleaned up:
    
     - introduce a new enumerator "BDX_PCI_QPI_PORT2_FILTER" for "QPI Port 2
       filter" on Broadwell,
     - increase UNCORE_EXTRA_PCI_DEV_MAX by one,
     - clean up the hardcoded index.
    Debugged-by: default avatarMasayoshi Mizuma <m.mizuma@jp.fujitsu.com>
    Suggested-by: default avatarIngo Molnar <mingo@kernel.org>
    Reported-by: default avatarMasayoshi Mizuma <m.mizuma@jp.fujitsu.com>
    Tested-by: default avatarMasayoshi Mizuma <m.mizuma@jp.fujitsu.com>
    Signed-off-by: default avatarKan Liang <kan.liang@linux.intel.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
    Cc: Jiri Olsa <jolsa@redhat.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>
    Cc: msys.mizuma@gmail.com
    Cc: stable@vger.kernel.org
    Fixes: 15a3e845 ("perf/x86/intel/uncore: Fix SBOX support for Broadwell CPUs")
    Link: http://lkml.kernel.org/r/1532953688-15008-1-git-send-email-kan.liang@linux.intel.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
    156c8b58
uncore_snbep.c 121 KB