hc
2023-11-06 e3e12f52b214121840b44c91de5b3e5af5d3eb84
kernel/arch/arm64/include/asm/thread_info.h
....@@ -43,6 +43,7 @@
4343 u64 ttbr0; /* saved TTBR0_EL1 */
4444 #endif
4545 int preempt_count; /* 0 => preemptable, <0 => bug */
46
+ int preempt_lazy_count; /* 0 => preemptable, <0 => bug */
4647 #ifdef CONFIG_SHADOW_CALL_STACK
4748 void *shadow_call_stack;
4849 #endif
....@@ -79,6 +80,7 @@
7980 #define TIF_FOREIGN_FPSTATE 3 /* CPU's FP state is not current's */
8081 #define TIF_UPROBE 4 /* uprobe breakpoint or singlestep */
8182 #define TIF_FSCHECK 5 /* Check FS is USER_DS on return */
83
+#define TIF_NEED_RESCHED_LAZY 6
8284 #define TIF_NOHZ 7
8385 #define TIF_SYSCALL_TRACE 8
8486 #define TIF_SYSCALL_AUDIT 9
....@@ -98,6 +100,7 @@
98100 #define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED)
99101 #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME)
100102 #define _TIF_FOREIGN_FPSTATE (1 << TIF_FOREIGN_FPSTATE)
103
+#define _TIF_NEED_RESCHED_LAZY (1 << TIF_NEED_RESCHED_LAZY)
101104 #define _TIF_NOHZ (1 << TIF_NOHZ)
102105 #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE)
103106 #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT)
....@@ -111,8 +114,9 @@
111114
112115 #define _TIF_WORK_MASK (_TIF_NEED_RESCHED | _TIF_SIGPENDING | \
113116 _TIF_NOTIFY_RESUME | _TIF_FOREIGN_FPSTATE | \
114
- _TIF_UPROBE | _TIF_FSCHECK)
117
+ _TIF_UPROBE | _TIF_FSCHECK | _TIF_NEED_RESCHED_LAZY)
115118
119
+#define _TIF_NEED_RESCHED_MASK (_TIF_NEED_RESCHED | _TIF_NEED_RESCHED_LAZY)
116120 #define _TIF_SYSCALL_WORK (_TIF_SYSCALL_TRACE | _TIF_SYSCALL_AUDIT | \
117121 _TIF_SYSCALL_TRACEPOINT | _TIF_SECCOMP | \
118122 _TIF_NOHZ)