diff options
Diffstat (limited to 'arch/microblaze')
-rw-r--r-- | arch/microblaze/include/asm/ptrace.h | 5 | ||||
-rw-r--r-- | arch/microblaze/kernel/ptrace.c | 9 |
2 files changed, 8 insertions, 6 deletions
diff --git a/arch/microblaze/include/asm/ptrace.h b/arch/microblaze/include/asm/ptrace.h index 816bee64b19..94e92c80585 100644 --- a/arch/microblaze/include/asm/ptrace.h +++ b/arch/microblaze/include/asm/ptrace.h | |||
@@ -61,6 +61,11 @@ struct pt_regs { | |||
61 | #define instruction_pointer(regs) ((regs)->pc) | 61 | #define instruction_pointer(regs) ((regs)->pc) |
62 | #define profile_pc(regs) instruction_pointer(regs) | 62 | #define profile_pc(regs) instruction_pointer(regs) |
63 | 63 | ||
64 | static inline long regs_return_value(struct pt_regs *regs) | ||
65 | { | ||
66 | return regs->r3; | ||
67 | } | ||
68 | |||
64 | #else /* __KERNEL__ */ | 69 | #else /* __KERNEL__ */ |
65 | 70 | ||
66 | /* pt_regs offsets used by gdbserver etc in ptrace syscalls */ | 71 | /* pt_regs offsets used by gdbserver etc in ptrace syscalls */ |
diff --git a/arch/microblaze/kernel/ptrace.c b/arch/microblaze/kernel/ptrace.c index 043cb58f9c4..6eb2aa927d8 100644 --- a/arch/microblaze/kernel/ptrace.c +++ b/arch/microblaze/kernel/ptrace.c | |||
@@ -147,10 +147,8 @@ asmlinkage long do_syscall_trace_enter(struct pt_regs *regs) | |||
147 | */ | 147 | */ |
148 | ret = -1L; | 148 | ret = -1L; |
149 | 149 | ||
150 | if (unlikely(current->audit_context)) | 150 | audit_syscall_entry(EM_MICROBLAZE, regs->r12, regs->r5, regs->r6, |
151 | audit_syscall_entry(EM_MICROBLAZE, regs->r12, | 151 | regs->r7, regs->r8); |
152 | regs->r5, regs->r6, | ||
153 | regs->r7, regs->r8); | ||
154 | 152 | ||
155 | return ret ?: regs->r12; | 153 | return ret ?: regs->r12; |
156 | } | 154 | } |
@@ -159,8 +157,7 @@ asmlinkage void do_syscall_trace_leave(struct pt_regs *regs) | |||
159 | { | 157 | { |
160 | int step; | 158 | int step; |
161 | 159 | ||
162 | if (unlikely(current->audit_context)) | 160 | audit_syscall_exit(regs); |
163 | audit_syscall_exit(AUDITSC_RESULT(regs->r3), regs->r3); | ||
164 | 161 | ||
165 | step = test_thread_flag(TIF_SINGLESTEP); | 162 | step = test_thread_flag(TIF_SINGLESTEP); |
166 | if (step || test_thread_flag(TIF_SYSCALL_TRACE)) | 163 | if (step || test_thread_flag(TIF_SYSCALL_TRACE)) |