Our skiroot_defconfig doesn't enable FTRACE, and so doesn't get STACKTRACE enabled either. That leads to a build failure since commit1614b2b11f
("arch: Make ARCH_STACKWALK independent of STACKTRACE") made stacktrace.c build even when STACKTRACE=n. arch/powerpc/kernel/stacktrace.c: In function ‘handle_backtrace_ipi’: arch/powerpc/kernel/stacktrace.c:171:2: error: implicit declaration of function ‘nmi_cpu_backtrace’ 171 | nmi_cpu_backtrace(regs); | ^~~~~~~~~~~~~~~~~ arch/powerpc/kernel/stacktrace.c: In function ‘arch_trigger_cpumask_backtrace’: arch/powerpc/kernel/stacktrace.c:226:2: error: implicit declaration of function ‘nmi_trigger_cpumask_backtrace’ 226 | nmi_trigger_cpumask_backtrace(mask, exclude_self, raise_backtrace_ipi); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This happens because our headers haven't defined arch_trigger_cpumask_backtrace, which causes lib/nmi_backtrace.c not to build nmi_cpu_backtrace(). The code in question doesn't actually depend on STACKTRACE=y, that was just added because arch_trigger_cpumask_backtrace() lived in stacktrace.c for convenience. So drop the dependency on CONFIG_STACKTRACE, that causes lib/nmi_backtrace.c to build nmi_cpu_backtrace() etc. and fixes the build. Fixes:1614b2b11f
("arch: Make ARCH_STACKWALK independent of STACKTRACE") [mpe: Cherry pick of5a72345e6a
from next into fixes] Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20220212111349.2806972-1-mpe@ellerman.id.au
20 lines
543 B
C
20 lines
543 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef _ASM_NMI_H
|
|
#define _ASM_NMI_H
|
|
|
|
#ifdef CONFIG_PPC_WATCHDOG
|
|
extern void arch_touch_nmi_watchdog(void);
|
|
long soft_nmi_interrupt(struct pt_regs *regs);
|
|
#else
|
|
static inline void arch_touch_nmi_watchdog(void) {}
|
|
#endif
|
|
|
|
#ifdef CONFIG_NMI_IPI
|
|
extern void arch_trigger_cpumask_backtrace(const cpumask_t *mask,
|
|
bool exclude_self);
|
|
#define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace
|
|
#endif
|
|
|
|
extern void hv_nmi_check_nonrecoverable(struct pt_regs *regs);
|
|
|
|
#endif /* _ASM_NMI_H */
|