[valgrind] Update aarch64 syscall wrappers.
Mark Wielaard
mjw at fedoraproject.org
Tue Nov 4 23:05:11 UTC 2014
commit 8cf836fca7ece5f03d0ee725b74d43f072f869b9
Author: Mark Wielaard <mjw at redhat.com>
Date: Tue Nov 4 22:59:20 2014 +0100
Update aarch64 syscall wrappers.
Merge valgrind-3.10.0-aarch64-times.patch
and valgrind-3.10.0-aarch64-getsetsid.patch
into valgrind-3.10.0-aarch64-syscalls.patch
add fdatasync, msync, pread64, setreuid, setregid,
mknodat, fchdir, chroot, fchownat, fchmod and fchown.
valgrind-3.10.0-aarch64-getsetsid.patch | 29 ----
valgrind-3.10.0-aarch64-syscalls.patch | 245 +++++++++++++++++++++++++++++++
valgrind-3.10.0-aarch64-times.patch | 20 ---
valgrind.spec | 20 ++-
4 files changed, 259 insertions(+), 55 deletions(-)
---
diff --git a/valgrind-3.10.0-aarch64-syscalls.patch b/valgrind-3.10.0-aarch64-syscalls.patch
new file mode 100644
index 0000000..42bd05f
--- /dev/null
+++ b/valgrind-3.10.0-aarch64-syscalls.patch
@@ -0,0 +1,245 @@
+diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
+index e3f736b..dd13bda 100644
+--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
++++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
+@@ -953,6 +953,7 @@ static SyscallTableEntry syscall_main_table[] = {
+ LINX_(__NR_setresuid, sys_setresuid), // 147
+ LINXY(__NR_getresuid, sys_getresuid), // 148
+ LINXY(__NR_getresgid, sys_getresgid), // 150
++ GENXY(__NR_times, sys_times), // 153
+ GENX_(__NR_setpgid, sys_setpgid), // 154
+ GENX_(__NR_getpgid, sys_getpgid), // 155
+ GENXY(__NR_uname, sys_newuname), // 160
+@@ -1068,7 +1069,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ
+ //ZZ GENX_(__NR_rmdir, sys_rmdir), // 40
+ //ZZ LINXY(__NR_pipe, sys_pipe), // 42
+-//ZZ GENXY(__NR_times, sys_times), // 43
+ //ZZ // GENX_(__NR_prof, sys_ni_syscall), // 44
+
+ //ZZ LINX_(__NR_setgid, sys_setgid16), // 46
+diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
+index dd13bda..045b9b9 100644
+--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
++++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
+@@ -956,6 +956,8 @@ static SyscallTableEntry syscall_main_table[] = {
+ GENXY(__NR_times, sys_times), // 153
+ GENX_(__NR_setpgid, sys_setpgid), // 154
+ GENX_(__NR_getpgid, sys_getpgid), // 155
++ GENX_(__NR_getsid, sys_getsid), // 156
++ GENX_(__NR_setsid, sys_setsid), // 157
+ GENXY(__NR_uname, sys_newuname), // 160
+ GENXY(__NR_getrlimit, sys_old_getrlimit), // 163
+ GENX_(__NR_setrlimit, sys_setrlimit), // 164
+@@ -1092,7 +1094,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ GENX_(__NR_getppid, sys_getppid), // 64
+ //ZZ
+ //ZZ GENX_(__NR_getpgrp, sys_getpgrp), // 65
+-//ZZ GENX_(__NR_setsid, sys_setsid), // 66
+ //ZZ LINXY(__NR_sigaction, sys_sigaction), // 67
+ //ZZ //zz // (__NR_sgetmask, sys_sgetmask), // 68 */* (ANSI C)
+ //ZZ //zz // (__NR_ssetmask, sys_ssetmask), // 69 */* (ANSI C)
+@@ -1176,7 +1177,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ GENX_(__NR_flock, sys_flock), // 143
+ //ZZ GENX_(__NR_msync, sys_msync), // 144
+ //ZZ
+-//ZZ GENX_(__NR_getsid, sys_getsid), // 147
+ //ZZ GENX_(__NR_fdatasync, sys_fdatasync), // 148
+ //ZZ LINXY(__NR__sysctl, sys_sysctl), // 149
+ //ZZ
+commit 92379dfe8ab904b8f7ecfa2a6c9094cf3cc2481d
+Author: sewardj <sewardj at a5019735-40e9-0310-863c-91ae7b9d1cf9>
+Date: Thu Oct 30 13:54:24 2014 +0000
+
+ Bug 339940 - (arm64/aarch64) unhandled syscall: 83 (sys_fdatasync) + patch
+ Patch from David Abdurachmanov <davidlt at cern.ch>
+
+
+ git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14675 a5019735-40e9-0310-863c-91ae7b9d1cf9
+
+diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
+index 045b9b9..69a997c 100644
+--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
++++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
+@@ -922,6 +922,7 @@ static SyscallTableEntry syscall_main_table[] = {
+
+ LINX_(__NR_utimensat, sys_utimensat), // 88
+ GENX_(__NR_fsync, sys_fsync), // 82
++ GENX_(__NR_fdatasync, sys_fdatasync), // 83
+ LINXY(__NR_timerfd_create, sys_timerfd_create), // 85
+ LINXY(__NR_timerfd_settime, sys_timerfd_settime), // 86
+ LINXY(__NR_timerfd_gettime, sys_timerfd_gettime), // 87
+@@ -1177,7 +1178,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ GENX_(__NR_flock, sys_flock), // 143
+ //ZZ GENX_(__NR_msync, sys_msync), // 144
+ //ZZ
+-//ZZ GENX_(__NR_fdatasync, sys_fdatasync), // 148
+ //ZZ LINXY(__NR__sysctl, sys_sysctl), // 149
+ //ZZ
+ //ZZ GENX_(__NR_munlock, sys_munlock), // 151
+
+commit 20a8d68dec8168d8a3df1b73f8128212344bcab0
+Author: sewardj <sewardj at a5019735-40e9-0310-863c-91ae7b9d1cf9>
+Date: Thu Oct 30 14:11:32 2014 +0000
+
+ Bug 340028 - unhandled syscalls for arm64 (msync, pread64, setreuid
+ and setregid)
+ Patch from dimitry at google.com.
+
+
+ git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14676 a5019735-40e9-0310-863c-91ae7b9d1cf9
+
+diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
+index 69a997c..d0fe78d 100644
+--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
++++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
+@@ -910,6 +910,7 @@ static SyscallTableEntry syscall_main_table[] = {
+ GENX_(__NR_write, sys_write), // 64
+ GENXY(__NR_readv, sys_readv), // 65
+ GENX_(__NR_writev, sys_writev), // 66
++ GENXY(__NR_pread64, sys_pread64), // 67
+ GENX_(__NR_pwrite64, sys_pwrite64), // 68
+ LINX_(__NR_pselect6, sys_pselect6), // 72
+ LINXY(__NR_ppoll, sys_ppoll), // 73
+@@ -951,6 +952,8 @@ static SyscallTableEntry syscall_main_table[] = {
+ PLAX_(__NR_rt_sigreturn, sys_rt_sigreturn), // 139
+ GENX_(__NR_setpriority, sys_setpriority), // 140
+ GENX_(__NR_getpriority, sys_getpriority), // 141
++ GENX_(__NR_setregid, sys_setregid), // 143
++ GENX_(__NR_setreuid, sys_setreuid), // 145
+ LINX_(__NR_setresuid, sys_setresuid), // 147
+ LINXY(__NR_getresuid, sys_getresuid), // 148
+ LINXY(__NR_getresgid, sys_getresgid), // 150
+@@ -1017,6 +1020,7 @@ static SyscallTableEntry syscall_main_table[] = {
+ PLAX_(__NR3264_fadvise64, sys_fadvise64), // 223
+
+ GENXY(__NR_mprotect, sys_mprotect), // 226
++ GENX_(__NR_msync, sys_msync), // 227
+ GENX_(__NR_mlock, sys_mlock), // 228
+ GENX_(__NR_mlockall, sys_mlockall), // 230
+ GENX_(__NR_madvise, sys_madvise), // 233
+@@ -1099,8 +1103,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ //zz // (__NR_sgetmask, sys_sgetmask), // 68 */* (ANSI C)
+ //ZZ //zz // (__NR_ssetmask, sys_ssetmask), // 69 */* (ANSI C)
+ //ZZ //zz
+-//ZZ LINX_(__NR_setreuid, sys_setreuid16), // 70
+-//ZZ LINX_(__NR_setregid, sys_setregid16), // 71
+ //ZZ PLAX_(__NR_sigsuspend, sys_sigsuspend), // 72
+ //ZZ LINXY(__NR_sigpending, sys_sigpending), // 73
+ //ZZ //zz // (__NR_sethostname, sys_sethostname), // 74 */*
+@@ -1176,7 +1178,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ GENXY(__NR_getdents, sys_getdents), // 141
+ //ZZ GENX_(__NR__newselect, sys_select), // 142
+ //ZZ GENX_(__NR_flock, sys_flock), // 143
+-//ZZ GENX_(__NR_msync, sys_msync), // 144
+ //ZZ
+ //ZZ LINXY(__NR__sysctl, sys_sysctl), // 149
+ //ZZ
+@@ -1207,7 +1208,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ LINXY(__NR_rt_sigpending, sys_rt_sigpending), // 176
+ //ZZ LINXY(__NR_rt_sigtimedwait, sys_rt_sigtimedwait),// 177
+ //ZZ
+-//ZZ GENXY(__NR_pread64, sys_pread64), // 180
+ //ZZ LINX_(__NR_chown, sys_chown16), // 182
+ //ZZ
+ //ZZ LINX_(__NR_capset, sys_capset), // 185
+
+commit f78d99007454b34d0619cabc99c3f66613b05285
+Author: sewardj <sewardj at a5019735-40e9-0310-863c-91ae7b9d1cf9>
+Date: Thu Oct 30 14:28:14 2014 +0000
+
+ Bug 340236 - 4 unhandled syscalls on aarch64/arm64:
+ mknodat (33), fchdir (50), chroot (51), fchownat (54)
+ Patch from Miroslav Franc (mfranc at redhat.com)
+
+
+ git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14677 a5019735-40e9-0310-863c-91ae7b9d1cf9
+
+diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
+index d0fe78d..54238ed 100644
+--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
++++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
+@@ -880,6 +880,7 @@ static SyscallTableEntry syscall_main_table[] = {
+ LINX_(__NR_inotify_add_watch, sys_inotify_add_watch), // 27
+ LINX_(__NR_inotify_rm_watch, sys_inotify_rm_watch), // 28
+ LINXY(__NR_ioctl, sys_ioctl), // 29
++ LINX_(__NR_mknodat, sys_mknodat), // 33
+ LINX_(__NR_mkdirat, sys_mkdirat), // 34
+ LINX_(__NR_unlinkat, sys_unlinkat), // 35
+ LINX_(__NR_symlinkat, sys_symlinkat), // 36
+@@ -896,7 +897,10 @@ static SyscallTableEntry syscall_main_table[] = {
+ LINX_(__NR_fallocate, sys_fallocate), // 47
+ LINX_(__NR_faccessat, sys_faccessat), // 48
+ GENX_(__NR_chdir, sys_chdir), // 49
++ GENX_(__NR_fchdir, sys_fchdir), // 50
++ GENX_(__NR_chroot, sys_chroot), // 51
+ LINX_(__NR_fchmodat, sys_fchmodat), // 53
++ LINX_(__NR_fchownat, sys_fchownat), // 54
+ LINXY(__NR_openat, sys_openat), // 56
+ GENXY(__NR_close, sys_close), // 57
+ LINXY(__NR_pipe2, sys_pipe2), // 59
+@@ -1093,7 +1097,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ // GENX_(__NR_ulimit, sys_ni_syscall), // 58
+ //ZZ //zz // (__NR_oldolduname, sys_olduname), // 59 Linux -- obsolete
+ //ZZ //zz
+-//ZZ GENX_(__NR_chroot, sys_chroot), // 61
+ //ZZ //zz // (__NR_ustat, sys_ustat) // 62 SVr4 -- deprecated
+ //ZZ GENXY(__NR_dup2, sys_dup2), // 63
+ //ZZ GENX_(__NR_getppid, sys_getppid), // 64
+@@ -1165,7 +1168,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ //zz // Nb: get_kernel_syms() was removed 2.4-->2.6
+ //ZZ // GENX_(__NR_get_kernel_syms, sys_ni_syscall), // 130
+ //ZZ GENX_(__NR_getpgid, sys_getpgid), // 132
+-//ZZ GENX_(__NR_fchdir, sys_fchdir), // 133
+ //ZZ //zz // (__NR_bdflush, sys_bdflush), // 134 */Linux
+ //ZZ //zz
+ //ZZ //zz // (__NR_sysfs, sys_sysfs), // 135 SVr4
+@@ -1329,8 +1331,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ LINX_(__NR_inotify_init, sys_inotify_init), // 291
+ //ZZ // LINX_(__NR_migrate_pages, sys_migrate_pages), // 294
+ //ZZ
+-//ZZ LINX_(__NR_mknodat, sys_mknodat), // 297
+-//ZZ LINX_(__NR_fchownat, sys_fchownat), // 298
+ //ZZ LINX_(__NR_futimesat, sys_futimesat), // 326 on arm
+ //ZZ
+ //ZZ PLAXY(__NR_fstatat64, sys_fstatat64), // 300
+
+commit 076d5f343c3753ea0db86701f922b7c84a83ec38
+Author: mjw <mjw at a5019735-40e9-0310-863c-91ae7b9d1cf9>
+Date: Tue Nov 4 13:43:21 2014 +0000
+
+ Bug 340630 arm64: fchmod (52) and fchown (55) syscalls not recognized.
+
+ git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14686 a5019735-40e9-0310-863c-91ae7b9d1cf9
+
+diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
+index 54238ed..f8a59c1 100644
+--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
++++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
+@@ -899,8 +899,10 @@ static SyscallTableEntry syscall_main_table[] = {
+ GENX_(__NR_chdir, sys_chdir), // 49
+ GENX_(__NR_fchdir, sys_fchdir), // 50
+ GENX_(__NR_chroot, sys_chroot), // 51
++ GENX_(__NR_fchmod, sys_fchmod), // 52
+ LINX_(__NR_fchmodat, sys_fchmodat), // 53
+ LINX_(__NR_fchownat, sys_fchownat), // 54
++ GENX_(__NR_fchown, sys_fchown), // 55
+ LINXY(__NR_openat, sys_openat), // 56
+ GENXY(__NR_close, sys_close), // 57
+ LINXY(__NR_pipe2, sys_pipe2), // 59
+@@ -1129,7 +1131,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ GENXY(__NR_munmap, sys_munmap), // 91
+ //ZZ GENX_(__NR_truncate, sys_truncate), // 92
+ //ZZ GENX_(__NR_ftruncate, sys_ftruncate), // 93
+-//ZZ GENX_(__NR_fchmod, sys_fchmod), // 94
+ //ZZ
+ //ZZ LINX_(__NR_fchown, sys_fchown16), // 95
+ //ZZ // GENX_(__NR_profil, sys_ni_syscall), // 98
+@@ -1237,7 +1238,6 @@ static SyscallTableEntry syscall_main_table[] = {
+ //ZZ
+ //ZZ GENXY(__NR_getgroups32, sys_getgroups), // 205
+ //ZZ GENX_(__NR_setgroups32, sys_setgroups), // 206
+-//ZZ GENX_(__NR_fchown32, sys_fchown), // 207
+ //ZZ LINX_(__NR_setresuid32, sys_setresuid), // 208
+ //ZZ LINXY(__NR_getresuid32, sys_getresuid), // 209
+ //ZZ
diff --git a/valgrind.spec b/valgrind.spec
index 2f56a67..e68967b 100644
--- a/valgrind.spec
+++ b/valgrind.spec
@@ -63,13 +63,15 @@ Patch4: valgrind-3.9.0-ldso-supp.patch
Patch5: valgrind-3.10.0-old-ppc32-instr-magic.patch
# KDE#339853 arm64 times syscall unknown
-Patch6: valgrind-3.10.0-aarch64-times.patch
-
-# KDE#339855 arm64 unhandled getsid/setsid syscalls.
-Patch7: valgrind-3.10.0-aarch64-getsetsid.patch
+# KDE#339856 arm64 unhandled getsid/setsid syscalls.
+# KDE#339940 arm64 unhandled syscall: 83 (sys_fdatasync)
+# KDE#340028 unhandled syscalls for arm64 (msync, pread64, setreuid, setregid)
+# KDE#340236 arm64 mknodat (33), fchdir (50), chroot (51), fchownat (54)
+# KDE#340630 arm64 fchmod (52) and fchown (55) syscalls not recognized.
+Patch6: valgrind-3.10.0-aarch64-syscalls.patch
# KDE#339858 arm64 recognize dmb sy. Data Memory Barrier full SYstem variant.
-Patch8: valgrind-3.10.0-aarch64-dmb-sy.patch
+Patch7: valgrind-3.10.0-aarch64-dmb-sy.patch
%if %{build_multilib}
# Ensure glibc{,-devel} is installed for both multilib arches
@@ -176,7 +178,6 @@ Valgrind User Manual for details.
%patch5 -p1
%patch6 -p1
%patch7 -p1
-%patch8 -p1
%build
# We need to use the software collection compiler and binutils if available.
@@ -325,6 +326,13 @@ echo ===============END TESTING===============
%endif
%changelog
+* Tue Nov 4 2014 Mark Wielaard <mjw at redhat.com>
+- Merge valgrind-3.10.0-aarch64-times.patch
+ and valgrind-3.10.0-aarch64-getsetsid.patch
+ into valgrind-3.10.0-aarch64-syscalls.patch
+ add fdatasync, msync, pread64, setreuid, setregid,
+ mknodat, fchdir, chroot, fchownat, fchmod and fchown.
+
* Sat Oct 11 2014 Mark Wielaard <mjw at redhat.com> - 3.10.0-4
- Add valgrind-3.10.0-aarch64-times.patch
- Add valgrind-3.10.0-aarch64-getsetsid.patch
More information about the scm-commits
mailing list