Implement linux rseq syscall as ENOSYS
commit1024237358f01009fe233cb1294f3b8211304eaa
authorMark Wielaard <mark@klomp.org>
Fri, 10 Dec 2021 16:41:59 +0000 (10 17:41 +0100)
committerMark Wielaard <mark@klomp.org>
Wed, 15 Dec 2021 11:15:06 +0000 (15 12:15 +0100)
treed631a069ee04e54f9a7bad7fa87e943a8299eeb5
parent536520cc1d58a041845cbbcbb25782e4201d9092
Implement linux rseq syscall as ENOSYS

This implements rseq for amd64, arm, arm64, ppc32, ppc64,
s390x and x86 linux as ENOSYS (without warning).

glibc will start using rseq to accelerate sched_getcpu, if
available. This would cause a warning from valgrind every
time a new thread is started.

Real rseq (restartable sequences) support is pretty hard, so
for now just explicitly return ENOSYS (just like we do for clone3).

https://sourceware.org/pipermail/libc-alpha/2021-December/133656.html
12 files changed:
coregrind/m_syswrap/syswrap-amd64-linux.c
coregrind/m_syswrap/syswrap-arm-linux.c
coregrind/m_syswrap/syswrap-arm64-linux.c
coregrind/m_syswrap/syswrap-ppc32-linux.c
coregrind/m_syswrap/syswrap-ppc64-linux.c
coregrind/m_syswrap/syswrap-s390x-linux.c
coregrind/m_syswrap/syswrap-x86-linux.c
include/vki/vki-scnums-arm-linux.h
include/vki/vki-scnums-arm64-linux.h
include/vki/vki-scnums-ppc32-linux.h
include/vki/vki-scnums-ppc64-linux.h
include/vki/vki-scnums-s390x-linux.h