| 1 |
|
| 2 | #ifndef _ASM_GENERIC_KPROBES_H
|
| 3 | #define _ASM_GENERIC_KPROBES_H
|
| 4 |
|
| 5 | #if defined(__KERNEL__) && !defined(__ASSEMBLER__)
|
| 6 | #ifdef CONFIG_KPROBES
|
| 7 | |
| 8 | * Blacklist ganerating macro. Specify functions which is not probed
|
| 9 | * by using this macro.
|
| 10 |
|
| 11 | # define __NOKPROBE_SYMBOL(fname) \
|
| 12 | static unsigned long __used \
|
| 13 | __section("_kprobe_blacklist") \
|
| 14 | _kbl_addr_##fname = (unsigned long)fname;
|
| 15 | # define NOKPROBE_SYMBOL(fname) __NOKPROBE_SYMBOL(fname)
|
| 16 |
|
| 17 | # define __kprobes notrace __section(".kprobes.text")
|
| 18 | # define nokprobe_inline __always_inline
|
| 19 | #else
|
| 20 | # define NOKPROBE_SYMBOL(fname)
|
| 21 | # define __kprobes
|
| 22 | # define nokprobe_inline inline
|
| 23 | #endif
|
| 24 | #endif
|
| 25 |
|
| 26 | #endif
|