diff options
Diffstat (limited to 'include/asm-ia64')
-rw-r--r-- | include/asm-ia64/ptrace.h | 11 | ||||
-rw-r--r-- | include/asm-ia64/thread_info.h | 11 | ||||
-rw-r--r-- | include/asm-ia64/unistd.h | 5 |
3 files changed, 23 insertions, 4 deletions
diff --git a/include/asm-ia64/ptrace.h b/include/asm-ia64/ptrace.h index f4ef87a36236..0bdce7dde1b0 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,16 @@ 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 | |||
313 | extern void ptrace_attach_sync_user_rbs (struct task_struct *); | ||
314 | #define arch_ptrace_attach(child) \ | ||
315 | ptrace_attach_sync_user_rbs(child) | ||
316 | |||
306 | #endif /* !__KERNEL__ */ | 317 | #endif /* !__KERNEL__ */ |
307 | 318 | ||
308 | /* pt_all_user_regs is used for PTRACE_GETREGS PTRACE_SETREGS */ | 319 | /* 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 d16031e72efa..93d83cbe0c8c 100644 --- a/include/asm-ia64/thread_info.h +++ b/include/asm-ia64/thread_info.h | |||
@@ -71,6 +71,9 @@ struct thread_info { | |||
71 | #define alloc_task_struct() ((struct task_struct *)__get_free_pages(GFP_KERNEL | __GFP_COMP, KERNEL_STACK_SIZE_ORDER)) | 71 | #define alloc_task_struct() ((struct task_struct *)__get_free_pages(GFP_KERNEL | __GFP_COMP, KERNEL_STACK_SIZE_ORDER)) |
72 | #define free_task_struct(tsk) free_pages((unsigned long) (tsk), KERNEL_STACK_SIZE_ORDER) | 72 | #define free_task_struct(tsk) free_pages((unsigned long) (tsk), KERNEL_STACK_SIZE_ORDER) |
73 | 73 | ||
74 | #define tsk_set_notify_resume(tsk) \ | ||
75 | set_ti_thread_flag(task_thread_info(tsk), TIF_NOTIFY_RESUME) | ||
76 | extern void tsk_clear_notify_resume(struct task_struct *tsk); | ||
74 | #endif /* !__ASSEMBLY */ | 77 | #endif /* !__ASSEMBLY */ |
75 | 78 | ||
76 | /* | 79 | /* |
@@ -85,28 +88,30 @@ struct thread_info { | |||
85 | #define TIF_SYSCALL_AUDIT 3 /* syscall auditing active */ | 88 | #define TIF_SYSCALL_AUDIT 3 /* syscall auditing active */ |
86 | #define TIF_SINGLESTEP 4 /* restore singlestep on return to user mode */ | 89 | #define TIF_SINGLESTEP 4 /* restore singlestep on return to user mode */ |
87 | #define TIF_RESTORE_SIGMASK 5 /* restore signal mask in do_signal() */ | 90 | #define TIF_RESTORE_SIGMASK 5 /* restore signal mask in do_signal() */ |
88 | #define TIF_PERFMON_WORK 6 /* work for pfm_handle_work() */ | 91 | #define TIF_NOTIFY_RESUME 6 /* resumption notification requested */ |
89 | #define TIF_POLLING_NRFLAG 16 /* true if poll_idle() is polling TIF_NEED_RESCHED */ | 92 | #define TIF_POLLING_NRFLAG 16 /* true if poll_idle() is polling TIF_NEED_RESCHED */ |
90 | #define TIF_MEMDIE 17 | 93 | #define TIF_MEMDIE 17 |
91 | #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 */ |
92 | #define TIF_DB_DISABLED 19 /* debug trap disabled for fsyscall */ | 95 | #define TIF_DB_DISABLED 19 /* debug trap disabled for fsyscall */ |
93 | #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 */ | ||
94 | 98 | ||
95 | #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE) | 99 | #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE) |
96 | #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT) | 100 | #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT) |
97 | #define _TIF_SINGLESTEP (1 << TIF_SINGLESTEP) | 101 | #define _TIF_SINGLESTEP (1 << TIF_SINGLESTEP) |
98 | #define _TIF_SYSCALL_TRACEAUDIT (_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT|_TIF_SINGLESTEP) | 102 | #define _TIF_SYSCALL_TRACEAUDIT (_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT|_TIF_SINGLESTEP) |
99 | #define _TIF_RESTORE_SIGMASK (1 << TIF_RESTORE_SIGMASK) | 103 | #define _TIF_RESTORE_SIGMASK (1 << TIF_RESTORE_SIGMASK) |
100 | #define _TIF_PERFMON_WORK (1 << TIF_PERFMON_WORK) | 104 | #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME) |
101 | #define _TIF_SIGPENDING (1 << TIF_SIGPENDING) | 105 | #define _TIF_SIGPENDING (1 << TIF_SIGPENDING) |
102 | #define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED) | 106 | #define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED) |
103 | #define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG) | 107 | #define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG) |
104 | #define _TIF_MCA_INIT (1 << TIF_MCA_INIT) | 108 | #define _TIF_MCA_INIT (1 << TIF_MCA_INIT) |
105 | #define _TIF_DB_DISABLED (1 << TIF_DB_DISABLED) | 109 | #define _TIF_DB_DISABLED (1 << TIF_DB_DISABLED) |
106 | #define _TIF_FREEZE (1 << TIF_FREEZE) | 110 | #define _TIF_FREEZE (1 << TIF_FREEZE) |
111 | #define _TIF_RESTORE_RSE (1 << TIF_RESTORE_RSE) | ||
107 | 112 | ||
108 | /* "work to do on user-return" bits */ | 113 | /* "work to do on user-return" bits */ |
109 | #define TIF_ALLWORK_MASK (_TIF_SIGPENDING|_TIF_PERFMON_WORK|_TIF_SYSCALL_AUDIT|\ | 114 | #define TIF_ALLWORK_MASK (_TIF_SIGPENDING|_TIF_NOTIFY_RESUME|_TIF_SYSCALL_AUDIT|\ |
110 | _TIF_NEED_RESCHED| _TIF_SYSCALL_TRACE|\ | 115 | _TIF_NEED_RESCHED| _TIF_SYSCALL_TRACE|\ |
111 | _TIF_RESTORE_SIGMASK) | 116 | _TIF_RESTORE_SIGMASK) |
112 | /* like TIF_ALLWORK_BITS but sans TIF_SYSCALL_TRACE or TIF_SYSCALL_AUDIT */ | 117 | /* like TIF_ALLWORK_BITS but sans TIF_SYSCALL_TRACE or TIF_SYSCALL_AUDIT */ |
diff --git a/include/asm-ia64/unistd.h b/include/asm-ia64/unistd.h index 315f8de950a2..e60314716122 100644 --- a/include/asm-ia64/unistd.h +++ b/include/asm-ia64/unistd.h | |||
@@ -299,11 +299,14 @@ | |||
299 | #define __NR_signalfd 1307 | 299 | #define __NR_signalfd 1307 |
300 | #define __NR_timerfd 1308 | 300 | #define __NR_timerfd 1308 |
301 | #define __NR_eventfd 1309 | 301 | #define __NR_eventfd 1309 |
302 | #define __NR_timerfd_create 1310 | ||
303 | #define __NR_timerfd_settime 1311 | ||
304 | #define __NR_timerfd_gettime 1312 | ||
302 | 305 | ||
303 | #ifdef __KERNEL__ | 306 | #ifdef __KERNEL__ |
304 | 307 | ||
305 | 308 | ||
306 | #define NR_syscalls 286 /* length of syscall table */ | 309 | #define NR_syscalls 289 /* length of syscall table */ |
307 | 310 | ||
308 | /* | 311 | /* |
309 | * The following defines stop scripts/checksyscalls.sh from complaining about | 312 | * The following defines stop scripts/checksyscalls.sh from complaining about |