]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - include/linux/ftrace_irq.h
mm/hotplug: invalid PFNs from pfn_to_online_page()
[mirror_ubuntu-bionic-kernel.git] / include / linux / ftrace_irq.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _LINUX_FTRACE_IRQ_H
3 #define _LINUX_FTRACE_IRQ_H
4
5
6 #ifdef CONFIG_FTRACE_NMI_ENTER
7 extern void arch_ftrace_nmi_enter(void);
8 extern void arch_ftrace_nmi_exit(void);
9 #else
10 static inline void arch_ftrace_nmi_enter(void) { }
11 static inline void arch_ftrace_nmi_exit(void) { }
12 #endif
13
14 #ifdef CONFIG_HWLAT_TRACER
15 extern bool trace_hwlat_callback_enabled;
16 extern void trace_hwlat_callback(bool enter);
17 #endif
18
19 static inline void ftrace_nmi_enter(void)
20 {
21 #ifdef CONFIG_HWLAT_TRACER
22 if (trace_hwlat_callback_enabled)
23 trace_hwlat_callback(true);
24 #endif
25 arch_ftrace_nmi_enter();
26 }
27
28 static inline void ftrace_nmi_exit(void)
29 {
30 arch_ftrace_nmi_exit();
31 #ifdef CONFIG_HWLAT_TRACER
32 if (trace_hwlat_callback_enabled)
33 trace_hwlat_callback(false);
34 #endif
35 }
36
37 #endif /* _LINUX_FTRACE_IRQ_H */