.. | .. |
---|
8 | 8 | #ifndef _ASM_THREAD_INFO_H |
---|
9 | 9 | #define _ASM_THREAD_INFO_H |
---|
10 | 10 | |
---|
11 | | -#include <linux/const.h> |
---|
| 11 | +#include <linux/bits.h> |
---|
12 | 12 | |
---|
13 | 13 | /* |
---|
14 | | - * Size of kernel stack for each process |
---|
| 14 | + * General size of kernel stacks |
---|
15 | 15 | */ |
---|
| 16 | +#ifdef CONFIG_KASAN |
---|
| 17 | +#define THREAD_SIZE_ORDER 4 |
---|
| 18 | +#else |
---|
16 | 19 | #define THREAD_SIZE_ORDER 2 |
---|
17 | | -#define ASYNC_ORDER 2 |
---|
18 | | - |
---|
| 20 | +#endif |
---|
| 21 | +#define BOOT_STACK_ORDER 2 |
---|
19 | 22 | #define THREAD_SIZE (PAGE_SIZE << THREAD_SIZE_ORDER) |
---|
20 | | -#define ASYNC_SIZE (PAGE_SIZE << ASYNC_ORDER) |
---|
21 | 23 | |
---|
22 | 24 | #ifndef __ASSEMBLY__ |
---|
23 | 25 | #include <asm/lowcore.h> |
---|
24 | 26 | #include <asm/page.h> |
---|
25 | | -#include <asm/processor.h> |
---|
| 27 | + |
---|
| 28 | +#define STACK_INIT_OFFSET \ |
---|
| 29 | + (THREAD_SIZE - STACK_FRAME_OVERHEAD - sizeof(struct pt_regs)) |
---|
26 | 30 | |
---|
27 | 31 | /* |
---|
28 | 32 | * low level task data that entry.S needs immediate access to |
---|
.. | .. |
---|
61 | 65 | #define TIF_GUARDED_STORAGE 4 /* load guarded storage control block */ |
---|
62 | 66 | #define TIF_PATCH_PENDING 5 /* pending live patching update */ |
---|
63 | 67 | #define TIF_PGSTE 6 /* New mm's will use 4K page tables */ |
---|
| 68 | +#define TIF_NOTIFY_SIGNAL 7 /* signal notifications exist */ |
---|
64 | 69 | #define TIF_ISOLATE_BP 8 /* Run process with isolated BP */ |
---|
65 | 70 | #define TIF_ISOLATE_BP_GUEST 9 /* Run KVM guests with isolated BP */ |
---|
66 | 71 | |
---|
.. | .. |
---|
77 | 82 | #define TIF_SECCOMP 26 /* secure computing */ |
---|
78 | 83 | #define TIF_SYSCALL_TRACEPOINT 27 /* syscall tracepoint instrumentation */ |
---|
79 | 84 | |
---|
80 | | -#define _TIF_NOTIFY_RESUME _BITUL(TIF_NOTIFY_RESUME) |
---|
81 | | -#define _TIF_SIGPENDING _BITUL(TIF_SIGPENDING) |
---|
82 | | -#define _TIF_NEED_RESCHED _BITUL(TIF_NEED_RESCHED) |
---|
83 | | -#define _TIF_UPROBE _BITUL(TIF_UPROBE) |
---|
84 | | -#define _TIF_GUARDED_STORAGE _BITUL(TIF_GUARDED_STORAGE) |
---|
85 | | -#define _TIF_PATCH_PENDING _BITUL(TIF_PATCH_PENDING) |
---|
86 | | -#define _TIF_ISOLATE_BP _BITUL(TIF_ISOLATE_BP) |
---|
87 | | -#define _TIF_ISOLATE_BP_GUEST _BITUL(TIF_ISOLATE_BP_GUEST) |
---|
| 85 | +#define _TIF_NOTIFY_RESUME BIT(TIF_NOTIFY_RESUME) |
---|
| 86 | +#define _TIF_NOTIFY_SIGNAL BIT(TIF_NOTIFY_SIGNAL) |
---|
| 87 | +#define _TIF_SIGPENDING BIT(TIF_SIGPENDING) |
---|
| 88 | +#define _TIF_NEED_RESCHED BIT(TIF_NEED_RESCHED) |
---|
| 89 | +#define _TIF_UPROBE BIT(TIF_UPROBE) |
---|
| 90 | +#define _TIF_GUARDED_STORAGE BIT(TIF_GUARDED_STORAGE) |
---|
| 91 | +#define _TIF_PATCH_PENDING BIT(TIF_PATCH_PENDING) |
---|
| 92 | +#define _TIF_ISOLATE_BP BIT(TIF_ISOLATE_BP) |
---|
| 93 | +#define _TIF_ISOLATE_BP_GUEST BIT(TIF_ISOLATE_BP_GUEST) |
---|
88 | 94 | |
---|
89 | | -#define _TIF_31BIT _BITUL(TIF_31BIT) |
---|
90 | | -#define _TIF_SINGLE_STEP _BITUL(TIF_SINGLE_STEP) |
---|
| 95 | +#define _TIF_31BIT BIT(TIF_31BIT) |
---|
| 96 | +#define _TIF_SINGLE_STEP BIT(TIF_SINGLE_STEP) |
---|
91 | 97 | |
---|
92 | | -#define _TIF_SYSCALL_TRACE _BITUL(TIF_SYSCALL_TRACE) |
---|
93 | | -#define _TIF_SYSCALL_AUDIT _BITUL(TIF_SYSCALL_AUDIT) |
---|
94 | | -#define _TIF_SECCOMP _BITUL(TIF_SECCOMP) |
---|
95 | | -#define _TIF_SYSCALL_TRACEPOINT _BITUL(TIF_SYSCALL_TRACEPOINT) |
---|
| 98 | +#define _TIF_SYSCALL_TRACE BIT(TIF_SYSCALL_TRACE) |
---|
| 99 | +#define _TIF_SYSCALL_AUDIT BIT(TIF_SYSCALL_AUDIT) |
---|
| 100 | +#define _TIF_SECCOMP BIT(TIF_SECCOMP) |
---|
| 101 | +#define _TIF_SYSCALL_TRACEPOINT BIT(TIF_SYSCALL_TRACEPOINT) |
---|
96 | 102 | |
---|
97 | 103 | #endif /* _ASM_THREAD_INFO_H */ |
---|