diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-04-30 16:13:44 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-05-12 15:28:03 -0400 |
commit | 8a6c160a2a13d82c75a50af7282b906cce948df5 (patch) | |
tree | fcdc9f9fa0ecd742d4c92ade3d4f9bc995d946d9 /include/asm-x86/thread_info.h | |
parent | b84200b3a0fafa167185201319940d8df62a8c7b (diff) |
x86: redo thread_info.h change
redo Roland's "signals: x86 TS_RESTORE_SIGMASK" ontop of the unified
thread_info.h file.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/asm-x86/thread_info.h')
-rw-r--r-- | include/asm-x86/thread_info.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/include/asm-x86/thread_info.h b/include/asm-x86/thread_info.h index 348f0e0faa3b..74481b72ae0f 100644 --- a/include/asm-x86/thread_info.h +++ b/include/asm-x86/thread_info.h | |||
@@ -80,7 +80,6 @@ struct thread_info { | |||
80 | #endif | 80 | #endif |
81 | #define TIF_SYSCALL_AUDIT 7 /* syscall auditing active */ | 81 | #define TIF_SYSCALL_AUDIT 7 /* syscall auditing active */ |
82 | #define TIF_SECCOMP 8 /* secure computing */ | 82 | #define TIF_SECCOMP 8 /* secure computing */ |
83 | #define TIF_RESTORE_SIGMASK 9 /* restore signal mask in do_signal */ | ||
84 | #define TIF_MCE_NOTIFY 10 /* notify userspace of an MCE */ | 83 | #define TIF_MCE_NOTIFY 10 /* notify userspace of an MCE */ |
85 | #define TIF_HRTICK_RESCHED 11 /* reprogram hrtick timer */ | 84 | #define TIF_HRTICK_RESCHED 11 /* reprogram hrtick timer */ |
86 | #define TIF_NOTSC 16 /* TSC is not accessible in userland */ | 85 | #define TIF_NOTSC 16 /* TSC is not accessible in userland */ |
@@ -108,7 +107,6 @@ struct thread_info { | |||
108 | #endif | 107 | #endif |
109 | #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT) | 108 | #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT) |
110 | #define _TIF_SECCOMP (1 << TIF_SECCOMP) | 109 | #define _TIF_SECCOMP (1 << TIF_SECCOMP) |
111 | #define _TIF_RESTORE_SIGMASK (1 << TIF_RESTORE_SIGMASK) | ||
112 | #define _TIF_MCE_NOTIFY (1 << TIF_MCE_NOTIFY) | 110 | #define _TIF_MCE_NOTIFY (1 << TIF_MCE_NOTIFY) |
113 | #define _TIF_HRTICK_RESCHED (1 << TIF_HRTICK_RESCHED) | 111 | #define _TIF_HRTICK_RESCHED (1 << TIF_HRTICK_RESCHED) |
114 | #define _TIF_NOTSC (1 << TIF_NOTSC) | 112 | #define _TIF_NOTSC (1 << TIF_NOTSC) |
@@ -237,10 +235,21 @@ static inline struct thread_info *stack_thread_info(void) | |||
237 | #define TS_COMPAT 0x0002 /* 32bit syscall active (64BIT)*/ | 235 | #define TS_COMPAT 0x0002 /* 32bit syscall active (64BIT)*/ |
238 | #define TS_POLLING 0x0004 /* true if in idle loop | 236 | #define TS_POLLING 0x0004 /* true if in idle loop |
239 | and not sleeping */ | 237 | and not sleeping */ |
238 | #define TS_RESTORE_SIGMASK 0x0008 /* restore signal mask in do_signal() */ | ||
240 | 239 | ||
241 | #define tsk_is_polling(t) (task_thread_info(t)->status & TS_POLLING) | 240 | #define tsk_is_polling(t) (task_thread_info(t)->status & TS_POLLING) |
242 | 241 | ||
243 | #ifndef __ASSEMBLY__ | 242 | #ifndef __ASSEMBLY__ |
243 | #define HAVE_SET_RESTORE_SIGMASK 1 | ||
244 | static inline void set_restore_sigmask(void) | ||
245 | { | ||
246 | struct thread_info *ti = current_thread_info(); | ||
247 | ti->status |= TS_RESTORE_SIGMASK; | ||
248 | set_bit(TIF_SIGPENDING, &ti->flags); | ||
249 | } | ||
250 | #endif /* !__ASSEMBLY__ */ | ||
251 | |||
252 | #ifndef __ASSEMBLY__ | ||
244 | extern void arch_task_cache_init(void); | 253 | extern void arch_task_cache_init(void); |
245 | extern void free_thread_info(struct thread_info *ti); | 254 | extern void free_thread_info(struct thread_info *ti); |
246 | extern int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src); | 255 | extern int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src); |