diff options
Diffstat (limited to 'arch/sh/kernel/cpu/sh5/entry.S')
-rw-r--r-- | arch/sh/kernel/cpu/sh5/entry.S | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/arch/sh/kernel/cpu/sh5/entry.S b/arch/sh/kernel/cpu/sh5/entry.S index bba331d5ef7..04c7da96814 100644 --- a/arch/sh/kernel/cpu/sh5/entry.S +++ b/arch/sh/kernel/cpu/sh5/entry.S | |||
@@ -987,11 +987,11 @@ work_resched: | |||
987 | work_notifysig: | 987 | work_notifysig: |
988 | gettr tr1, LINK | 988 | gettr tr1, LINK |
989 | 989 | ||
990 | movi do_signal, r6 | 990 | movi do_notify_resume, r6 |
991 | ptabs r6, tr0 | 991 | ptabs r6, tr0 |
992 | or SP, ZERO, r2 | 992 | or SP, ZERO, r2 |
993 | or ZERO, ZERO, r3 | 993 | or r7, ZERO, r3 |
994 | blink tr0, LINK /* Call do_signal(regs, 0), return here */ | 994 | blink tr0, LINK /* Call do_notify_resume(regs, current_thread_info->flags), return here */ |
995 | 995 | ||
996 | restore_all: | 996 | restore_all: |
997 | /* Do prefetches */ | 997 | /* Do prefetches */ |
@@ -1305,13 +1305,15 @@ syscall_allowed: | |||
1305 | beq/l r6, ZERO, tr0 | 1305 | beq/l r6, ZERO, tr0 |
1306 | 1306 | ||
1307 | /* Trace it by calling syscall_trace before and after */ | 1307 | /* Trace it by calling syscall_trace before and after */ |
1308 | movi syscall_trace, r4 | 1308 | movi do_syscall_trace_enter, r4 |
1309 | or SP, ZERO, r2 | 1309 | or SP, ZERO, r2 |
1310 | or ZERO, ZERO, r3 | ||
1311 | ptabs r4, tr0 | 1310 | ptabs r4, tr0 |
1312 | blink tr0, LINK | 1311 | blink tr0, LINK |
1313 | 1312 | ||
1314 | /* Reload syscall number as r5 is trashed by syscall_trace */ | 1313 | /* Save the retval */ |
1314 | st.q SP, FRAME_R(2), r2 | ||
1315 | |||
1316 | /* Reload syscall number as r5 is trashed by do_syscall_trace_enter */ | ||
1315 | ld.q SP, FRAME_S(FSYSCALL_ID), r5 | 1317 | ld.q SP, FRAME_S(FSYSCALL_ID), r5 |
1316 | andi r5, 0x1ff, r5 | 1318 | andi r5, 0x1ff, r5 |
1317 | 1319 | ||
@@ -1343,9 +1345,8 @@ syscall_ret_trace: | |||
1343 | /* We get back here only if under trace */ | 1345 | /* We get back here only if under trace */ |
1344 | st.q SP, FRAME_R(9), r2 /* Save return value */ | 1346 | st.q SP, FRAME_R(9), r2 /* Save return value */ |
1345 | 1347 | ||
1346 | movi syscall_trace, LINK | 1348 | movi do_syscall_trace_leave, LINK |
1347 | or SP, ZERO, r2 | 1349 | or SP, ZERO, r2 |
1348 | movi 1, r3 | ||
1349 | ptabs LINK, tr0 | 1350 | ptabs LINK, tr0 |
1350 | blink tr0, LINK | 1351 | blink tr0, LINK |
1351 | 1352 | ||