27 lines
		
	
	
		
			833 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			833 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| #ifndef _ASM_GENERIC_KPROBES_H
 | |
| #define _ASM_GENERIC_KPROBES_H
 | |
| 
 | |
| #if defined(__KERNEL__) && !defined(__ASSEMBLY__)
 | |
| #ifdef CONFIG_KPROBES
 | |
| /*
 | |
|  * Blacklist ganerating macro. Specify functions which is not probed
 | |
|  * by using this macro.
 | |
|  */
 | |
| # define __NOKPROBE_SYMBOL(fname)				\
 | |
| static unsigned long __used					\
 | |
| 	__section("_kprobe_blacklist")				\
 | |
| 	_kbl_addr_##fname = (unsigned long)fname;
 | |
| # define NOKPROBE_SYMBOL(fname)	__NOKPROBE_SYMBOL(fname)
 | |
| /* Use this to forbid a kprobes attach on very low level functions */
 | |
| # define __kprobes	__section(".kprobes.text")
 | |
| # define nokprobe_inline	__always_inline
 | |
| #else
 | |
| # define NOKPROBE_SYMBOL(fname)
 | |
| # define __kprobes
 | |
| # define nokprobe_inline	inline
 | |
| #endif
 | |
| #endif /* defined(__KERNEL__) && !defined(__ASSEMBLY__) */
 | |
| 
 | |
| #endif /* _ASM_GENERIC_KPROBES_H */
 |