]> git.ipfire.org Git - thirdparty/valgrind.git/commit
Wrap linux specific mseal syscall
authorMartin Cermak <mcermak@redhat.com>
Tue, 17 Jun 2025 11:51:48 +0000 (13:51 +0200)
committerMark Wielaard <mark@klomp.org>
Tue, 17 Jun 2025 15:19:09 +0000 (17:19 +0200)
commit9775bc496e4b6f80dec993e5d147356ebbe29fe3
treea36573541a9fbb7fc5f01e1a49c00daf52bb409d
parent67e6e1c4c2fa7847ab7cb14360814599520932c6
Wrap linux specific mseal syscall

mseal takes address, size and flags.  Flags are reserved for
future use. Modern CPUs support memory permissions such as RW and
NX bits.  The mseal syscall takes address and size parameters to
additionally protect memory mapping against modifications.

FTR: https://docs.kernel.org/userspace-api/mseal.html

Declare a sys_mseal wrapper in priv_syswrap-linux.h and hook it
for {amd64,arm,arm64,mips64,nanomips,ppc32,ppc64,riscv64,s390x,x86}-linux
using LINX_ with PRE handler in syswrap-linux.c

https://bugs.kde.org/show_bug.cgi?id=505228
17 files changed:
NEWS
coregrind/m_syswrap/priv_syswrap-linux.h
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-linux.c
coregrind/m_syswrap/syswrap-mips32-linux.c
coregrind/m_syswrap/syswrap-mips64-linux.c
coregrind/m_syswrap/syswrap-nanomips-linux.c
coregrind/m_syswrap/syswrap-ppc32-linux.c
coregrind/m_syswrap/syswrap-ppc64-linux.c
coregrind/m_syswrap/syswrap-riscv64-linux.c
coregrind/m_syswrap/syswrap-s390x-linux.c
coregrind/m_syswrap/syswrap-x86-linux.c
include/vki/vki-scnums-mips32-linux.h
include/vki/vki-scnums-mips64-linux.h
include/vki/vki-scnums-shared-linux.h