arm64: Fix build failure when HARDLOCKUP_DETECTOR_PERF is enabled
authorWill Deacon <will@kernel.org>
Fri, 4 Dec 2020 09:19:35 +0000 (09:19 +0000)
committerWill Deacon <will@kernel.org>
Fri, 4 Dec 2020 09:26:37 +0000 (09:26 +0000)
commitce4b2c01781a24b0a04845f683feea44ade70503
tree45f15991a09350f99746fcb0156f0bacffe4e2f0
parent367c820ef08082e68df8a3bc12e62393af21e4b5
arm64: Fix build failure when HARDLOCKUP_DETECTOR_PERF is enabled

If HARDLOCKUP_DETECTOR_PERF is selected but HW_PERF_EVENTS is not, then
the associated watchdog driver will fail to link:

  |    aarch64-linux-ld: Unexpected GOT/PLT entries detected!
  |    aarch64-linux-ld: Unexpected run-time procedure linkages detected!
  |    aarch64-linux-ld: kernel/watchdog_hld.o: in function `hardlockup_detector_event_create':
  | >> watchdog_hld.c:(.text+0x68): undefined reference to `hw_nmi_get_sample_period

Change the Kconfig dependencies so that HAVE_PERF_EVENTS_NMI requires
the hardware PMU driver to be enabled, ensuring that the required
symbols are present.

Cc: Sumit Garg <sumit.garg@linaro.org>
Reported-by: kernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/r/202012031509.4O5ZoWNI-lkp@intel.com
Fixes: 367c820ef080 ("arm64: Enable perf events based hard lockup detector")
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/Kconfig