ftrace.h (74aaaa1e9bbafbfd3e030bdf8f961b830192f3d6) | ftrace.h (6845d64d51cf69c096176e34864e161429bcb664) |
---|---|
1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef _ASM_ARM_FTRACE 3#define _ASM_ARM_FTRACE 4 5#define HAVE_FUNCTION_GRAPH_FP_TEST 6 7#ifdef CONFIG_DYNAMIC_FTRACE_WITH_REGS 8#define ARCH_SUPPORTS_FTRACE_OPS 1 --- 21 unchanged lines hidden (view full) --- 30#endif 31 32#endif 33 34#endif 35 36#ifndef __ASSEMBLY__ 37 | 1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef _ASM_ARM_FTRACE 3#define _ASM_ARM_FTRACE 4 5#define HAVE_FUNCTION_GRAPH_FP_TEST 6 7#ifdef CONFIG_DYNAMIC_FTRACE_WITH_REGS 8#define ARCH_SUPPORTS_FTRACE_OPS 1 --- 21 unchanged lines hidden (view full) --- 30#endif 31 32#endif 33 34#endif 35 36#ifndef __ASSEMBLY__ 37 |
38#if defined(CONFIG_FRAME_POINTER) && !defined(CONFIG_ARM_UNWIND) 39/* 40 * return_address uses walk_stackframe to do it's work. If both 41 * CONFIG_FRAME_POINTER=y and CONFIG_ARM_UNWIND=y walk_stackframe uses unwind 42 * information. For this to work in the function tracer many functions would 43 * have to be marked with __notrace. So for now just depend on 44 * !CONFIG_ARM_UNWIND. 45 */ 46 |
|
38void *return_address(unsigned int); 39 | 47void *return_address(unsigned int); 48 |
49#else 50 51static inline void *return_address(unsigned int level) 52{ 53 return NULL; 54} 55 56#endif 57 |
|
40#define ftrace_return_address(n) return_address(n) 41 42#define ARCH_HAS_SYSCALL_MATCH_SYM_NAME 43 44static inline bool arch_syscall_match_sym_name(const char *sym, 45 const char *name) 46{ 47 if (!strcmp(sym, "sys_mmap2")) --- 15 unchanged lines hidden --- | 58#define ftrace_return_address(n) return_address(n) 59 60#define ARCH_HAS_SYSCALL_MATCH_SYM_NAME 61 62static inline bool arch_syscall_match_sym_name(const char *sym, 63 const char *name) 64{ 65 if (!strcmp(sym, "sys_mmap2")) --- 15 unchanged lines hidden --- |