|
@@ -97,7 +97,7 @@ static inline struct thread_info *current_thread_info(void)
|
|
|
|
|
|
extern struct thread_info *alloc_thread_info(struct task_struct *tsk);
|
|
extern struct thread_info *alloc_thread_info(struct task_struct *tsk);
|
|
extern void free_thread_info(struct thread_info *ti);
|
|
extern void free_thread_info(struct thread_info *ti);
|
|
-
|
|
|
|
|
|
+
|
|
#endif /* THREAD_SHIFT < PAGE_SHIFT */
|
|
#endif /* THREAD_SHIFT < PAGE_SHIFT */
|
|
|
|
|
|
#endif /* __ASSEMBLY__ */
|
|
#endif /* __ASSEMBLY__ */
|
|
@@ -116,6 +116,7 @@ extern void free_thread_info(struct thread_info *ti);
|
|
#define TIF_SYSCALL_AUDIT 5 /* syscall auditing active */
|
|
#define TIF_SYSCALL_AUDIT 5 /* syscall auditing active */
|
|
#define TIF_SECCOMP 6 /* secure computing */
|
|
#define TIF_SECCOMP 6 /* secure computing */
|
|
#define TIF_NOTIFY_RESUME 7 /* callback before returning to user */
|
|
#define TIF_NOTIFY_RESUME 7 /* callback before returning to user */
|
|
|
|
+#define TIF_SYSCALL_FTRACE 8 /* for ftrace syscall instrumentation */
|
|
#define TIF_USEDFPU 16 /* FPU was used by this task this quantum (SMP) */
|
|
#define TIF_USEDFPU 16 /* FPU was used by this task this quantum (SMP) */
|
|
#define TIF_POLLING_NRFLAG 17 /* true if poll_idle() is polling TIF_NEED_RESCHED */
|
|
#define TIF_POLLING_NRFLAG 17 /* true if poll_idle() is polling TIF_NEED_RESCHED */
|
|
#define TIF_MEMDIE 18
|
|
#define TIF_MEMDIE 18
|
|
@@ -129,25 +130,27 @@ extern void free_thread_info(struct thread_info *ti);
|
|
#define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT)
|
|
#define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT)
|
|
#define _TIF_SECCOMP (1 << TIF_SECCOMP)
|
|
#define _TIF_SECCOMP (1 << TIF_SECCOMP)
|
|
#define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME)
|
|
#define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME)
|
|
|
|
+#define _TIF_SYSCALL_FTRACE (1 << TIF_SYSCALL_FTRACE)
|
|
#define _TIF_USEDFPU (1 << TIF_USEDFPU)
|
|
#define _TIF_USEDFPU (1 << TIF_USEDFPU)
|
|
#define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG)
|
|
#define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG)
|
|
#define _TIF_FREEZE (1 << TIF_FREEZE)
|
|
#define _TIF_FREEZE (1 << TIF_FREEZE)
|
|
|
|
|
|
/*
|
|
/*
|
|
- * _TIF_ALLWORK_MASK and _TIF_WORK_MASK need to fit within a byte, or we
|
|
|
|
|
|
+ * _TIF_ALLWORK_MASK and _TIF_WORK_MASK need to fit within 2 bytes, or we
|
|
* blow the tst immediate size constraints and need to fix up
|
|
* blow the tst immediate size constraints and need to fix up
|
|
* arch/sh/kernel/entry-common.S.
|
|
* arch/sh/kernel/entry-common.S.
|
|
*/
|
|
*/
|
|
|
|
|
|
/* work to do in syscall trace */
|
|
/* work to do in syscall trace */
|
|
#define _TIF_WORK_SYSCALL_MASK (_TIF_SYSCALL_TRACE | _TIF_SINGLESTEP | \
|
|
#define _TIF_WORK_SYSCALL_MASK (_TIF_SYSCALL_TRACE | _TIF_SINGLESTEP | \
|
|
- _TIF_SYSCALL_AUDIT | _TIF_SECCOMP)
|
|
|
|
|
|
+ _TIF_SYSCALL_AUDIT | _TIF_SECCOMP | \
|
|
|
|
+ _TIF_SYSCALL_FTRACE)
|
|
|
|
|
|
/* work to do on any return to u-space */
|
|
/* work to do on any return to u-space */
|
|
#define _TIF_ALLWORK_MASK (_TIF_SYSCALL_TRACE | _TIF_SIGPENDING | \
|
|
#define _TIF_ALLWORK_MASK (_TIF_SYSCALL_TRACE | _TIF_SIGPENDING | \
|
|
_TIF_NEED_RESCHED | _TIF_SYSCALL_AUDIT | \
|
|
_TIF_NEED_RESCHED | _TIF_SYSCALL_AUDIT | \
|
|
_TIF_SINGLESTEP | _TIF_RESTORE_SIGMASK | \
|
|
_TIF_SINGLESTEP | _TIF_RESTORE_SIGMASK | \
|
|
- _TIF_NOTIFY_RESUME)
|
|
|
|
|
|
+ _TIF_NOTIFY_RESUME | _TIF_SYSCALL_FTRACE)
|
|
|
|
|
|
/* work to do on interrupt/exception return */
|
|
/* work to do on interrupt/exception return */
|
|
#define _TIF_WORK_MASK (_TIF_ALLWORK_MASK & ~(_TIF_SYSCALL_TRACE | \
|
|
#define _TIF_WORK_MASK (_TIF_ALLWORK_MASK & ~(_TIF_SYSCALL_TRACE | \
|