xref: /openbmc/linux/arch/um/include/asm/kasan.h (revision 8a328396)
1*5b301409SPatricia Alfonso /* SPDX-License-Identifier: GPL-2.0 */
2*5b301409SPatricia Alfonso #ifndef __ASM_UM_KASAN_H
3*5b301409SPatricia Alfonso #define __ASM_UM_KASAN_H
4*5b301409SPatricia Alfonso 
5*5b301409SPatricia Alfonso #include <linux/init.h>
6*5b301409SPatricia Alfonso #include <linux/const.h>
7*5b301409SPatricia Alfonso 
8*5b301409SPatricia Alfonso #define KASAN_SHADOW_OFFSET _AC(CONFIG_KASAN_SHADOW_OFFSET, UL)
9*5b301409SPatricia Alfonso 
10*5b301409SPatricia Alfonso /* used in kasan_mem_to_shadow to divide by 8 */
11*5b301409SPatricia Alfonso #define KASAN_SHADOW_SCALE_SHIFT 3
12*5b301409SPatricia Alfonso 
13*5b301409SPatricia Alfonso #ifdef CONFIG_X86_64
14*5b301409SPatricia Alfonso #define KASAN_HOST_USER_SPACE_END_ADDR 0x00007fffffffffffUL
15*5b301409SPatricia Alfonso /* KASAN_SHADOW_SIZE is the size of total address space divided by 8 */
16*5b301409SPatricia Alfonso #define KASAN_SHADOW_SIZE ((KASAN_HOST_USER_SPACE_END_ADDR + 1) >> \
17*5b301409SPatricia Alfonso 			KASAN_SHADOW_SCALE_SHIFT)
18*5b301409SPatricia Alfonso #else
19*5b301409SPatricia Alfonso #error "KASAN_SHADOW_SIZE is not defined for this sub-architecture"
20*5b301409SPatricia Alfonso #endif /* CONFIG_X86_64 */
21*5b301409SPatricia Alfonso 
22*5b301409SPatricia Alfonso #define KASAN_SHADOW_START (KASAN_SHADOW_OFFSET)
23*5b301409SPatricia Alfonso #define KASAN_SHADOW_END (KASAN_SHADOW_START + KASAN_SHADOW_SIZE)
24*5b301409SPatricia Alfonso 
25*5b301409SPatricia Alfonso #ifdef CONFIG_KASAN
26*5b301409SPatricia Alfonso void kasan_init(void);
27*5b301409SPatricia Alfonso extern int kasan_um_is_ready;
28*5b301409SPatricia Alfonso 
29*5b301409SPatricia Alfonso #ifdef CONFIG_STATIC_LINK
30*5b301409SPatricia Alfonso #define kasan_arch_is_ready() (kasan_um_is_ready)
31*5b301409SPatricia Alfonso #endif
32*5b301409SPatricia Alfonso #else
kasan_init(void)33*5b301409SPatricia Alfonso static inline void kasan_init(void) { }
34*5b301409SPatricia Alfonso #endif /* CONFIG_KASAN */
35*5b301409SPatricia Alfonso 
36*5b301409SPatricia Alfonso #endif /* __ASM_UM_KASAN_H */
37