The patch titled Subject: arm64: only HAVE_HARDLOCKUP_DETECTOR_PERF if the PMU config is enabled has been added to the -mm mm-nonmm-unstable branch. Its filename is arm64-enable-perf-events-based-hard-lockup-detector-fix.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/arm64-enable-perf-events-based-hard-lockup-detector-fix.patch This patch will later appear in the mm-nonmm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Douglas Anderson <dianders@xxxxxxxxxxxx> Subject: arm64: only HAVE_HARDLOCKUP_DETECTOR_PERF if the PMU config is enabled Date: Tue, 23 May 2023 07:39:53 -0700 If you try to enable the arm64 perf-based hardlockup detector but you don't enable CONFIG_ARM_PMU then you'll get an error: arch/arm64/kernel/watchdog_hld.c: In function 'arch_perf_nmi_is_available': arch/arm64/kernel/watchdog_hld.c:35:16: error: implicit declaration of function 'arm_pmu_irq_is_nmi' [-Werror=implicit-function-declaration] 35 | return arm_pmu_irq_is_nmi(); It doesn't make sense to enable HAVE_HARDLOCKUP_DETECTOR_PERF if the PMU isn't enabled. Let's add a dependency. HW_PERF_EVENTS is a synonum for ARM_PMU and makes the most logical sense here, so add the dependency on that. Link: https://lkml.kernel.org/r/20230523073952.1.I60217a63acc35621e13f10be16c0cd7c363caf8c@changeid Fixes: 02ea35ee19d9 ("arm64: enable perf events based hard lockup detector") Closes: https://lore.kernel.org/r/20230522114922.1052421-1-arnd@xxxxxxxxxx Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx> Reported-by: Arnd Bergmann <arnd@xxxxxxxx> Acked-by: Arnd Bergmann <arnd@xxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- arch/arm64/Kconfig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) --- a/arch/arm64/Kconfig~arm64-enable-perf-events-based-hard-lockup-detector-fix +++ a/arch/arm64/Kconfig @@ -203,7 +203,8 @@ config ARM64 select HAVE_FUNCTION_ERROR_INJECTION select HAVE_FUNCTION_GRAPH_TRACER select HAVE_GCC_PLUGINS - select HAVE_HARDLOCKUP_DETECTOR_PERF if PERF_EVENTS && HAVE_PERF_EVENTS_NMI + select HAVE_HARDLOCKUP_DETECTOR_PERF if PERF_EVENTS && \ + HW_PERF_EVENTS && HAVE_PERF_EVENTS_NMI select HAVE_HW_BREAKPOINT if PERF_EVENTS select HAVE_IOREMAP_PROT select HAVE_IRQ_TIME_ACCOUNTING _ Patches currently in -mm which might be from dianders@xxxxxxxxxxxx are migrate_pages-avoid-blocking-for-io-in-migrate_sync_light.patch watchdog-perf-define-dummy-watchdog_update_hrtimer_threshold-on-correct-config.patch watchdog-perf-more-properly-prevent-false-positives-with-turbo-modes.patch watchdog-hardlockup-add-comments-to-touch_nmi_watchdog.patch watchdog-perf-rename-watchdog_hldc-to-watchdog_perfc.patch watchdog-hardlockup-move-perf-hardlockup-checking-panic-to-common-watchdogc.patch watchdog-hardlockup-style-changes-to-watchdog_hardlockup_check-is_hardlockup.patch watchdog-hardlockup-add-a-cpu-param-to-watchdog_hardlockup_check.patch watchdog-hardlockup-move-perf-hardlockup-watchdog-petting-to-watchdogc.patch watchdog-hardlockup-rename-some-nmi-watchdog-constants-function.patch watchdog-hardlockup-have-the-perf-hardlockup-use-__weak-functions-more-cleanly.patch watchdog-hardlockup-detect-hard-lockups-using-secondary-buddy-cpus.patch watchdog-perf-add-a-weak-function-for-an-arch-to-detect-if-perf-can-use-nmis.patch arm64-enable-perf-events-based-hard-lockup-detector.patch arm64-enable-perf-events-based-hard-lockup-detector-fix.patch