qemu-e2k/linux-user
Richard Henderson 5d70c3510b linux-user/aarch64: Signal SEGV_MTEAERR for async tag check error
The real kernel collects _TIF_MTE_ASYNC_FAULT into the current thread's
state on any kernel entry (interrupt, exception etc), and then delivers
the signal in advance of resuming the thread.

This means that while the signal won't be delivered immediately, it will
not be delayed forever -- at minimum it will be delivered after the next
clock interrupt.

We don't have a clock interrupt in linux-user, so we issue a cpu_kick
to signal a return to the main loop at the end of the current TB.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20210212184902.1251044-29-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2021-02-16 13:17:10 +00:00
..
aarch64 linux-user/aarch64: Signal SEGV_MTEAERR for async tag check error 2021-02-16 13:17:10 +00:00
alpha
arm
cris
generic
host
hppa
i386
m68k
microblaze
mips
mips64
nios2
openrisc
ppc
riscv
s390x
sh4
sparc
sparc64
tilegx
x86_64
xtensa
cpu_loop-common.h
elfload.c
errno_defs.h
exit.c
fd-trans.c
fd-trans.h
flat.h
flatload.c
ioctls.h
linux_loop.h
linuxload.c
main.c
meson.build
mmap.c linux-user/aarch64: Implement PROT_MTE 2021-02-16 13:08:46 +00:00
qemu.h linux-user: Fix types in uaccess.c 2021-02-16 13:02:29 +00:00
safe-syscall.S
semihost.c
signal-common.h
signal.c
socket.h
strace.c
strace.list
syscall_defs.h linux-user/aarch64: Implement PROT_MTE 2021-02-16 13:08:46 +00:00
syscall_types.h
syscall.c linux-user/aarch64: Implement PR_MTE_TCF and PR_MTE_TAG 2021-02-16 13:08:25 +00:00
target_flat.h
trace-events
trace.h
uaccess.c linux-user: Handle tags in lock_user/unlock_user 2021-02-16 13:06:11 +00:00
uname.c
uname.h
vm86.c