diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2009-06-12 04:26:26 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2009-06-12 04:27:31 -0400 |
commit | bcf5cef7db869dd3b0ec55ad99641e66b2f5cf02 (patch) | |
tree | 56119ef1804f60122aba7b780768938936d180a1 /arch/s390/kernel/entry64.S | |
parent | 7757591ab4a36314a258e181dbf0994415c288c2 (diff) |
[S390] secure computing arch backend
Enable secure computing on s390 as well.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/entry64.S')
-rw-r--r-- | arch/s390/kernel/entry64.S | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/s390/kernel/entry64.S b/arch/s390/kernel/entry64.S index 84a105838e03..3cec9b504f5f 100644 --- a/arch/s390/kernel/entry64.S +++ b/arch/s390/kernel/entry64.S | |||
@@ -56,6 +56,7 @@ _TIF_WORK_SVC = (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME | _TIF_NEED_RESCHED | \ | |||
56 | _TIF_MCCK_PENDING | _TIF_RESTART_SVC | _TIF_SINGLE_STEP ) | 56 | _TIF_MCCK_PENDING | _TIF_RESTART_SVC | _TIF_SINGLE_STEP ) |
57 | _TIF_WORK_INT = (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME | _TIF_NEED_RESCHED | \ | 57 | _TIF_WORK_INT = (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME | _TIF_NEED_RESCHED | \ |
58 | _TIF_MCCK_PENDING) | 58 | _TIF_MCCK_PENDING) |
59 | _TIF_SYSCALL = (_TIF_SYSCALL_TRACE>>8 | _TIF_SYSCALL_AUDIT>>8 | _TIF_SECCOMP>>8) | ||
59 | 60 | ||
60 | #define BASED(name) name-system_call(%r13) | 61 | #define BASED(name) name-system_call(%r13) |
61 | 62 | ||
@@ -260,7 +261,7 @@ sysc_do_restart: | |||
260 | larl %r10,sys_call_table_emu # use 31 bit emulation system calls | 261 | larl %r10,sys_call_table_emu # use 31 bit emulation system calls |
261 | sysc_noemu: | 262 | sysc_noemu: |
262 | #endif | 263 | #endif |
263 | tm __TI_flags+7(%r9),(_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT) | 264 | tm __TI_flags+6(%r9),_TIF_SYSCALL |
264 | lgf %r8,0(%r7,%r10) # load address of system call routine | 265 | lgf %r8,0(%r7,%r10) # load address of system call routine |
265 | jnz sysc_tracesys | 266 | jnz sysc_tracesys |
266 | basr %r14,%r8 # call sys_xxxx | 267 | basr %r14,%r8 # call sys_xxxx |
@@ -391,7 +392,7 @@ sysc_tracego: | |||
391 | basr %r14,%r8 # call sys_xxx | 392 | basr %r14,%r8 # call sys_xxx |
392 | stg %r2,SP_R2(%r15) # store return value | 393 | stg %r2,SP_R2(%r15) # store return value |
393 | sysc_tracenogo: | 394 | sysc_tracenogo: |
394 | tm __TI_flags+7(%r9),(_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT) | 395 | tm __TI_flags+6(%r9),_TIF_SYSCALL |
395 | jz sysc_return | 396 | jz sysc_return |
396 | la %r2,SP_PTREGS(%r15) # load pt_regs | 397 | la %r2,SP_PTREGS(%r15) # load pt_regs |
397 | larl %r14,sysc_return # return point is sysc_return | 398 | larl %r14,sysc_return # return point is sysc_return |