···5959 }6060}61616262+static inline long syscall_get_return_value(struct task_struct *task,6363+ struct pt_regs *regs)6464+{6565+ return regs->regs[2];6666+}6767+6868+static inline void syscall_set_return_value(struct task_struct *task,6969+ struct pt_regs *regs,7070+ int error, long val)7171+{7272+ if (error) {7373+ regs->regs[2] = -error;7474+ regs->regs[7] = -1;7575+ } else {7676+ regs->regs[2] = val;7777+ regs->regs[7] = 0;7878+ }7979+}8080+6281static inline void syscall_get_arguments(struct task_struct *task,6382 struct pt_regs *regs,6483 unsigned int i, unsigned int n,
+6-3
arch/mips/include/asm/thread_info.h
···116116#define TIF_32BIT_ADDR 23 /* 32-bit address space (o32/n32) */117117#define TIF_FPUBOUND 24 /* thread bound to FPU-full CPU set */118118#define TIF_LOAD_WATCH 25 /* If set, load watch registers */119119+#define TIF_SYSCALL_TRACEPOINT 26 /* syscall tracepoint instrumentation */119120#define TIF_SYSCALL_TRACE 31 /* syscall trace active */120121121122#define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE)···133132#define _TIF_32BIT_ADDR (1<<TIF_32BIT_ADDR)134133#define _TIF_FPUBOUND (1<<TIF_FPUBOUND)135134#define _TIF_LOAD_WATCH (1<<TIF_LOAD_WATCH)135135+#define _TIF_SYSCALL_TRACEPOINT (1<<TIF_SYSCALL_TRACEPOINT)136136137137#define _TIF_WORK_SYSCALL_ENTRY (_TIF_NOHZ | _TIF_SYSCALL_TRACE | \138138- _TIF_SYSCALL_AUDIT)138138+ _TIF_SYSCALL_AUDIT | _TIF_SYSCALL_TRACEPOINT)139139140140/* work to do in syscall_trace_leave() */141141#define _TIF_WORK_SYSCALL_EXIT (_TIF_NOHZ | _TIF_SYSCALL_TRACE | \142142- _TIF_SYSCALL_AUDIT)142142+ _TIF_SYSCALL_AUDIT | _TIF_SYSCALL_TRACEPOINT)143143144144/* work to do on interrupt/exception return */145145#define _TIF_WORK_MASK \146146 (_TIF_SIGPENDING | _TIF_NEED_RESCHED | _TIF_NOTIFY_RESUME)147147/* work to do on any return to u-space */148148#define _TIF_ALLWORK_MASK (_TIF_NOHZ | _TIF_WORK_MASK | \149149- _TIF_WORK_SYSCALL_EXIT)149149+ _TIF_WORK_SYSCALL_EXIT | \150150+ _TIF_SYSCALL_TRACEPOINT)150151151152/*152153 * We stash processor id into a COP0 register to retrieve it fast