qemu/linux-user
Timothy E Baldwin ba41249678 linux-user: Support for restarting system calls for SH4 targets
Update the SH4 main loop and sigreturn code:
 * on TARGET_ERESTARTSYS, wind guest PC backwards to repeat syscall insn
 * set all guest CPU state within signal.c code on sigreturn
 * handle TARGET_QEMU_ESIGRETURN in the main loop as the indication
   that the main loop should not touch any guest CPU state

Signed-off-by: Timothy Edward Baldwin <T.E.Baldwin99@members.leeds.ac.uk>
Message-id: 1441497448-32489-12-git-send-email-T.E.Baldwin99@members.leeds.ac.uk
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
[PMM: tweak commit message; drop TARGET_USE_ERESTARTSYS define]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
2016-05-27 14:49:49 +03:00
..
aarch64 linux-user: remove unavailable syscalls from aarch64 2016-02-23 21:25:10 +02:00
alpha linux-user: sync syscall numbers with kernel 2016-02-23 21:25:10 +02:00
arm linux-user: Support for restarting system calls for ARM targets 2016-05-27 14:49:49 +03:00
cris linux-user: sync syscall numbers with kernel 2016-02-23 21:25:10 +02:00
i386 linux-user: correct timerfd_create syscall numbers 2016-02-23 21:25:10 +02:00
m68k linux-user: correct timerfd_create syscall numbers 2016-02-23 21:25:10 +02:00
microblaze linux-user: sync syscall numbers with kernel 2016-02-23 21:25:10 +02:00
mips linux-user: Support for restarting system calls for MIPS targets 2016-05-27 14:49:49 +03:00
mips64 linux-user: Support for restarting system calls for MIPS targets 2016-05-27 14:49:49 +03:00
openrisc linux-user: sync syscall numbers with kernel 2016-02-23 21:25:10 +02:00
ppc linux-user: Support for restarting system calls for PPC targets 2016-05-27 14:49:49 +03:00
s390x linux-user: sync syscall numbers with kernel 2016-02-23 21:25:10 +02:00
sh4 linux-user: Support for restarting system calls for SH4 targets 2016-05-27 14:49:49 +03:00
sparc linux-user: Support for restarting system calls for SPARC targets 2016-05-27 14:49:49 +03:00
sparc64 linux-user: Support for restarting system calls for SPARC targets 2016-05-27 14:49:49 +03:00
tilegx linux-user: sync syscall numbers with kernel 2016-02-23 21:25:10 +02:00
unicore32 build: [linux-user] Rename "syscall.h" to "target_syscall.h" in target directories 2016-02-23 21:25:09 +02:00
x86_64 linux-user: correct timerfd_create syscall numbers 2016-02-23 21:25:10 +02:00
elfload.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
errno_defs.h linux-user: Renumber TARGET_QEMU_ESIGRETURN, make it not arch-specific 2016-05-27 14:49:49 +03:00
flat.h Support for 32 bit ABI on 64 bit targets (only enabled Sparc64) 2007-10-14 16:27:31 +00:00
flatload.c osdep: add wrappers for socket functions 2016-03-10 17:19:07 +00:00
ioctls.h linux-user: Convert blkpg to use a special subop handler 2014-10-06 21:52:45 +03:00
linux_loop.h Fix build failure with old kernel headers (loop.h is incompatible with 2008-05-23 16:06:43 +00:00
linuxload.c linux-user: Clean up includes 2016-01-29 15:07:22 +00:00
m68k-sim.c linux-user: Clean up includes 2016-01-29 15:07:22 +00:00
main.c linux-user: Support for restarting system calls for SH4 targets 2016-05-27 14:49:49 +03:00
Makefile.objs linux-user: rename cpu-uname -> uname 2014-05-02 21:59:36 +03:00
mmap.c linux-user: Clean up includes 2016-01-29 15:07:22 +00:00
qemu.h cpu: move exec-all.h inclusion out of cpu.h 2016-05-19 16:42:29 +02:00
signal.c linux-user: Support for restarting system calls for SH4 targets 2016-05-27 14:49:49 +03:00
socket.h linux-user: support SO_PASSSEC setsockopt option 2014-06-29 14:19:59 +03:00
strace.c linux-user: Clean up includes 2016-01-29 15:07:22 +00:00
strace.list linux-user: add setns and unshare 2014-08-22 15:06:34 +03:00
syscall_defs.h linux-user: Add SOCKOP_sendmmsg and SOCKOP_recvmmsg socket call, wire them up. 2016-01-11 14:54:03 +02:00
syscall_types.h linux-user: Convert blkpg to use a special subop handler 2014-10-06 21:52:45 +03:00
syscall.c linux-user: Support for restarting system calls for x86 targets 2016-05-27 14:49:49 +03:00
target_flat.h linux-user/FLAT: allow targets to override FLAT processing 2011-02-09 10:33:54 +02:00
uaccess.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
uname.c linux-user: Clean up includes 2016-01-29 15:07:22 +00:00
uname.h linux-user: move uname functions to uname.c 2014-05-02 21:59:36 +03:00
vm86.c linux-user: Clean up includes 2016-01-29 15:07:22 +00:00