diff options
Diffstat (limited to 'include/asm-ia64')
-rw-r--r-- | include/asm-ia64/ptrace.h | 7 | ||||
-rw-r--r-- | include/asm-ia64/thread_info.h | 2 |
2 files changed, 9 insertions, 0 deletions
diff --git a/include/asm-ia64/ptrace.h b/include/asm-ia64/ptrace.h index f4ef87a36236..13435f778b0c 100644 --- a/include/asm-ia64/ptrace.h +++ b/include/asm-ia64/ptrace.h | |||
@@ -292,6 +292,7 @@ struct switch_stack { | |||
292 | unsigned long, long); | 292 | unsigned long, long); |
293 | extern void ia64_flush_fph (struct task_struct *); | 293 | extern void ia64_flush_fph (struct task_struct *); |
294 | extern void ia64_sync_fph (struct task_struct *); | 294 | extern void ia64_sync_fph (struct task_struct *); |
295 | extern void ia64_sync_krbs(void); | ||
295 | extern long ia64_sync_user_rbs (struct task_struct *, struct switch_stack *, | 296 | extern long ia64_sync_user_rbs (struct task_struct *, struct switch_stack *, |
296 | unsigned long, unsigned long); | 297 | unsigned long, unsigned long); |
297 | 298 | ||
@@ -303,6 +304,12 @@ struct switch_stack { | |||
303 | extern void ia64_increment_ip (struct pt_regs *pt); | 304 | extern void ia64_increment_ip (struct pt_regs *pt); |
304 | extern void ia64_decrement_ip (struct pt_regs *pt); | 305 | extern void ia64_decrement_ip (struct pt_regs *pt); |
305 | 306 | ||
307 | extern void ia64_ptrace_stop(void); | ||
308 | #define arch_ptrace_stop(code, info) \ | ||
309 | ia64_ptrace_stop() | ||
310 | #define arch_ptrace_stop_needed(code, info) \ | ||
311 | (!test_thread_flag(TIF_RESTORE_RSE)) | ||
312 | |||
306 | #endif /* !__KERNEL__ */ | 313 | #endif /* !__KERNEL__ */ |
307 | 314 | ||
308 | /* pt_all_user_regs is used for PTRACE_GETREGS PTRACE_SETREGS */ | 315 | /* pt_all_user_regs is used for PTRACE_GETREGS PTRACE_SETREGS */ |
diff --git a/include/asm-ia64/thread_info.h b/include/asm-ia64/thread_info.h index 5a2c47957069..93d83cbe0c8c 100644 --- a/include/asm-ia64/thread_info.h +++ b/include/asm-ia64/thread_info.h | |||
@@ -94,6 +94,7 @@ extern void tsk_clear_notify_resume(struct task_struct *tsk); | |||
94 | #define TIF_MCA_INIT 18 /* this task is processing MCA or INIT */ | 94 | #define TIF_MCA_INIT 18 /* this task is processing MCA or INIT */ |
95 | #define TIF_DB_DISABLED 19 /* debug trap disabled for fsyscall */ | 95 | #define TIF_DB_DISABLED 19 /* debug trap disabled for fsyscall */ |
96 | #define TIF_FREEZE 20 /* is freezing for suspend */ | 96 | #define TIF_FREEZE 20 /* is freezing for suspend */ |
97 | #define TIF_RESTORE_RSE 21 /* user RBS is newer than kernel RBS */ | ||
97 | 98 | ||
98 | #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE) | 99 | #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE) |
99 | #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT) | 100 | #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT) |
@@ -107,6 +108,7 @@ extern void tsk_clear_notify_resume(struct task_struct *tsk); | |||
107 | #define _TIF_MCA_INIT (1 << TIF_MCA_INIT) | 108 | #define _TIF_MCA_INIT (1 << TIF_MCA_INIT) |
108 | #define _TIF_DB_DISABLED (1 << TIF_DB_DISABLED) | 109 | #define _TIF_DB_DISABLED (1 << TIF_DB_DISABLED) |
109 | #define _TIF_FREEZE (1 << TIF_FREEZE) | 110 | #define _TIF_FREEZE (1 << TIF_FREEZE) |
111 | #define _TIF_RESTORE_RSE (1 << TIF_RESTORE_RSE) | ||
110 | 112 | ||
111 | /* "work to do on user-return" bits */ | 113 | /* "work to do on user-return" bits */ |
112 | #define TIF_ALLWORK_MASK (_TIF_SIGPENDING|_TIF_NOTIFY_RESUME|_TIF_SYSCALL_AUDIT|\ | 114 | #define TIF_ALLWORK_MASK (_TIF_SIGPENDING|_TIF_NOTIFY_RESUME|_TIF_SYSCALL_AUDIT|\ |