^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #ifndef _ASM_NMI_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) #define _ASM_NMI_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) #ifdef CONFIG_PPC_WATCHDOG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) extern void arch_touch_nmi_watchdog(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) static inline void arch_touch_nmi_watchdog(void) {}
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #if defined(CONFIG_NMI_IPI) && defined(CONFIG_STACKTRACE)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) extern void arch_trigger_cpumask_backtrace(const cpumask_t *mask,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) bool exclude_self);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) extern void hv_nmi_check_nonrecoverable(struct pt_regs *regs);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) #endif /* _ASM_NMI_H */