Commit a3460a59 authored by Al Viro's avatar Al Viro

new helper: current_pt_regs()

Normally (and that's the default) it's just task_pt_regs(current).
However, if an architecture can optimize that, it can do so by
making a macro of its own available from asm/ptrace.h.  More
importantly, some architectures have task_pt_regs() working only
for traced tasks blocked on signal delivery.  current_pt_regs()
needs to work for *all* processes, so before those architectures
start using stuff relying on current_pt_regs() they'll need a
properly working variant.
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 2aa3a7f8
...@@ -403,6 +403,10 @@ static inline void user_single_step_siginfo(struct task_struct *tsk, ...@@ -403,6 +403,10 @@ static inline void user_single_step_siginfo(struct task_struct *tsk,
#define arch_ptrace_stop(code, info) do { } while (0) #define arch_ptrace_stop(code, info) do { } while (0)
#endif #endif
#ifndef current_pt_regs
#define current_pt_regs() task_pt_regs(current)
#endif
extern int task_current_syscall(struct task_struct *target, long *callno, extern int task_current_syscall(struct task_struct *target, long *callno,
unsigned long args[6], unsigned int maxargs, unsigned long args[6], unsigned int maxargs,
unsigned long *sp, unsigned long *pc); unsigned long *sp, unsigned long *pc);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment