|
@@ -41,6 +41,7 @@ ret_fast_syscall:
|
|
|
|
|
|
|
|
/* perform architecture specific actions before user return */
|
|
/* perform architecture specific actions before user return */
|
|
|
arch_ret_to_user r1, lr
|
|
arch_ret_to_user r1, lr
|
|
|
|
|
+ ct_user_enter
|
|
|
|
|
|
|
|
restore_user_regs fast = 1, offset = S_OFF
|
|
restore_user_regs fast = 1, offset = S_OFF
|
|
|
UNWIND(.fnend )
|
|
UNWIND(.fnend )
|
|
@@ -76,6 +77,7 @@ no_work_pending:
|
|
|
#endif
|
|
#endif
|
|
|
/* perform architecture specific actions before user return */
|
|
/* perform architecture specific actions before user return */
|
|
|
arch_ret_to_user r1, lr
|
|
arch_ret_to_user r1, lr
|
|
|
|
|
+ ct_user_enter save = 0
|
|
|
|
|
|
|
|
restore_user_regs fast = 0, offset = 0
|
|
restore_user_regs fast = 0, offset = 0
|
|
|
ENDPROC(ret_to_user_from_irq)
|
|
ENDPROC(ret_to_user_from_irq)
|
|
@@ -394,6 +396,7 @@ ENTRY(vector_swi)
|
|
|
mcr p15, 0, ip, c1, c0 @ update control register
|
|
mcr p15, 0, ip, c1, c0 @ update control register
|
|
|
#endif
|
|
#endif
|
|
|
enable_irq
|
|
enable_irq
|
|
|
|
|
+ ct_user_exit
|
|
|
|
|
|
|
|
get_thread_info tsk
|
|
get_thread_info tsk
|
|
|
adr tbl, sys_call_table @ load syscall table pointer
|
|
adr tbl, sys_call_table @ load syscall table pointer
|