|
@@ -365,6 +365,13 @@ syscall_dotrace_cont:
|
|
blrl /* Call handler */
|
|
blrl /* Call handler */
|
|
.globl ret_from_syscall
|
|
.globl ret_from_syscall
|
|
ret_from_syscall:
|
|
ret_from_syscall:
|
|
|
|
+#ifdef CONFIG_DEBUG_RSEQ
|
|
|
|
+ /* Check whether the syscall is issued inside a restartable sequence */
|
|
|
|
+ stw r3,GPR3(r1)
|
|
|
|
+ addi r3,r1,STACK_FRAME_OVERHEAD
|
|
|
|
+ bl rseq_syscall
|
|
|
|
+ lwz r3,GPR3(r1)
|
|
|
|
+#endif
|
|
mr r6,r3
|
|
mr r6,r3
|
|
CURRENT_THREAD_INFO(r12, r1)
|
|
CURRENT_THREAD_INFO(r12, r1)
|
|
/* disable interrupts so current_thread_info()->flags can't change */
|
|
/* disable interrupts so current_thread_info()->flags can't change */
|