csky: Use in_syscall & forget_syscall instead of r11_sig
authorGuo Ren <ren_guo@c-sky.com>
Sat, 30 Mar 2019 15:44:34 +0000 (23:44 +0800)
committerGuo Ren <ren_guo@c-sky.com>
Mon, 22 Apr 2019 05:44:57 +0000 (13:44 +0800)
commitf4625ee0e40a5c724bb3f3eb7fd89e491bfd7646
tree5e94b471f288c647793f4ad38697d28f81573022
parentf335b10f3b6ca2d11adef95092fff65152c31b48
csky: Use in_syscall & forget_syscall instead of r11_sig

We could use regs->sr 16-24 bits to detect syscall: VEC_TRAP0 and
r11_sig is no necessary for current implementation.

In this patch, we implement the in_syscall and forget_syscall which are
inspired from arm & nds32, but csky pt_regs has no syscall_num element
and we just set zero to regs->sr's vector-bits-field instead.

For ret_from_fork, current task was forked from parent which is in syscall
progress and its regs->sr has been already setted with VEC_TRAP0. See:
arch/csky/kernel/process.c: copy_thread()

Signed-off-by: Guo Ren <ren_guo@c-sky.com>
arch/csky/abiv1/inc/abi/regdef.h
arch/csky/abiv2/inc/abi/regdef.h
arch/csky/include/asm/ptrace.h
arch/csky/kernel/entry.S
arch/csky/kernel/signal.c