]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
syswrap, i386-linux: add missing ipc syscalls
authorMaxim Zhukov <mussitantesmortem@gmail.com>
Mon, 23 May 2022 14:30:22 +0000 (17:30 +0300)
committerMark Wielaard <mark@klomp.org>
Fri, 17 Oct 2025 17:38:19 +0000 (19:38 +0200)
Kernel 5.1 introduced separate IPC syscalls:
* semget
* semctl
* shmget
* shmctl
* shmat
* shmdt
* msgget
* msgsnd
* msgrcv
* msgctl

instead of ipc()

Note the new shm wrappers were already added as
afea9317a1c9 ("Bug 501846 - Add x86 Linux shm wrappers")

Signed-off-by: Maxim Zhukov <mussitantesmortem@gmail.com>
https://bugs.kde.org/show_bug.cgi?id=454276

NEWS
coregrind/m_syswrap/syswrap-x86-linux.c

diff --git a/NEWS b/NEWS
index e531218131d6a6a9cd1407214aa45c3dfee54372..6b8f755dd816219f6478bcf9c82be5195e18d495 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -93,6 +93,7 @@ are not entered into bugzilla tend to get forgotten about or ignored.
 369030  Wrap linux syscall: 171 (setdomainname)
 388526  Inconsistent severity in message text: "WARNING: Serious error"
 418756  MAP_FIXED_NOREPLACE mmap flag unsupported
+454276  Some IPC syscalls is missing for x86 linux
 476465  AArch64 ARMv8.3 LDAPR/LDAPRH/LDAPRB instructions not supported
 493430  Review all syscalls that use or return (new) file descriptors
 493434  Add --track-fds=bad mode (no "leak" tracking)
index 22f5a1a07c907871c960a9aba1dda48131b8b10e..df9b33634b6366a20f1927c55395dd41cd2f1156 100644 (file)
@@ -1624,11 +1624,19 @@ static SyscallTableEntry syscall_table[] = {
    LINX_(__NR_io_pgetevents,     sys_io_pgetevents),    // 385
    GENX_(__NR_rseq,              sys_ni_syscall),       // 386
 
+   LINX_(__NR_semget,            sys_semget),           // 393
+   LINXY(__NR_semctl,            sys_semctl),           // 394
+
    LINX_(__NR_shmget,            sys_shmget),           // 395
    LINX_(__NR_shmctl,            sys_shmctl),           // 396
    LINX_(__NR_shmat,             sys_shmat),            // 397
    LINX_(__NR_shmdt,             sys_shmdt),            // 398
 
+   LINX_(__NR_msgget,            sys_msgget),           // 399
+   LINX_(__NR_msgsnd,            sys_msgsnd),           // 400
+   LINXY(__NR_msgrcv,            sys_msgrcv),           // 401
+   LINXY(__NR_msgctl,            sys_msgctl),           // 402
+
    LINXY(__NR_clock_gettime64,   sys_clock_gettime64),  // 403
    LINX_(__NR_clock_settime64,   sys_clock_settime64),  // 404