aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc
diff options
context:
space:
mode:
authorRoland McGrath <roland@redhat.com>2008-04-20 18:06:49 -0400
committerDavid S. Miller <davem@davemloft.net>2008-07-27 20:32:19 -0400
commite35a8925e0e7af8b26161a2c161ea31be0296b80 (patch)
tree708008d1494a91f76277f9140a219ac24e88e432 /arch/sparc
parentbadcbf0e8654c4a4ca51fe46c75a70376e83c1ef (diff)
sparc64: tracehook: TIF_NOTIFY_RESUME
This adds TIF_NOTIFY_RESUME support for sparc64. When set, we call tracehook_notify_resume() on the way to user mode. Signed-off-by: Roland McGrath <roland@redhat.com>
Diffstat (limited to 'arch/sparc')
-rw-r--r--arch/sparc/include/asm/thread_info_64.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/arch/sparc/include/asm/thread_info_64.h b/arch/sparc/include/asm/thread_info_64.h
index 960969d5ad06..c0a737d7292c 100644
--- a/arch/sparc/include/asm/thread_info_64.h
+++ b/arch/sparc/include/asm/thread_info_64.h
@@ -219,7 +219,7 @@ register struct thread_info *current_thread_info_reg asm("g6");
219 * nop 219 * nop
220 */ 220 */
221#define TIF_SYSCALL_TRACE 0 /* syscall trace active */ 221#define TIF_SYSCALL_TRACE 0 /* syscall trace active */
222/* flags bit 1 is available */ 222#define TIF_NOTIFY_RESUME 1 /* callback before returning to user */
223#define TIF_SIGPENDING 2 /* signal pending */ 223#define TIF_SIGPENDING 2 /* signal pending */
224#define TIF_NEED_RESCHED 3 /* rescheduling necessary */ 224#define TIF_NEED_RESCHED 3 /* rescheduling necessary */
225#define TIF_PERFCTR 4 /* performance counters active */ 225#define TIF_PERFCTR 4 /* performance counters active */
@@ -239,6 +239,7 @@ register struct thread_info *current_thread_info_reg asm("g6");
239#define TIF_POLLING_NRFLAG 14 239#define TIF_POLLING_NRFLAG 14
240 240
241#define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) 241#define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE)
242#define _TIF_NOTIFY_RESUME (1<<TIF_NOTIFY_RESUME)
242#define _TIF_SIGPENDING (1<<TIF_SIGPENDING) 243#define _TIF_SIGPENDING (1<<TIF_SIGPENDING)
243#define _TIF_NEED_RESCHED (1<<TIF_NEED_RESCHED) 244#define _TIF_NEED_RESCHED (1<<TIF_NEED_RESCHED)
244#define _TIF_PERFCTR (1<<TIF_PERFCTR) 245#define _TIF_PERFCTR (1<<TIF_PERFCTR)
@@ -250,8 +251,9 @@ register struct thread_info *current_thread_info_reg asm("g6");
250#define _TIF_POLLING_NRFLAG (1<<TIF_POLLING_NRFLAG) 251#define _TIF_POLLING_NRFLAG (1<<TIF_POLLING_NRFLAG)
251 252
252#define _TIF_USER_WORK_MASK ((0xff << TI_FLAG_WSAVED_SHIFT) | \ 253#define _TIF_USER_WORK_MASK ((0xff << TI_FLAG_WSAVED_SHIFT) | \
253 (_TIF_SIGPENDING | \ 254 _TIF_DO_NOTIFY_RESUME_MASK | \
254 _TIF_NEED_RESCHED | _TIF_PERFCTR)) 255 _TIF_NEED_RESCHED | _TIF_PERFCTR)
256#define _TIF_DO_NOTIFY_RESUME_MASK (_TIF_NOTIFY_RESUME | _TIF_SIGPENDING)
255 257
256/* 258/*
257 * Thread-synchronous status. 259 * Thread-synchronous status.