Add valgrind-3.11.0-futex.patch.

This commit is contained in:
Mark Wielaard 2016-02-17 22:29:03 +01:00
parent 538f0cd8b5
commit b427b65fbf
2 changed files with 38 additions and 0 deletions

View File

@ -0,0 +1,33 @@
commit 9a447c6472947bce97e8b90b7f3f97bd7cd9f3ed
Author: mjw <mjw@a5019735-40e9-0310-863c-91ae7b9d1cf9>
Date: Wed Feb 17 20:53:34 2016 +0000
Bug 359201 futex syscall skips argument 5 if op is FUTEX_WAIT_BITSET
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15793 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/m_syswrap/syswrap-linux.c b/coregrind/m_syswrap/syswrap-linux.c
index f796969..b57436c 100644
--- a/coregrind/m_syswrap/syswrap-linux.c
+++ b/coregrind/m_syswrap/syswrap-linux.c
@@ -1154,13 +1154,16 @@ PRE(sys_futex)
return;
}
if (*(vki_u32 *)ARG1 != ARG3) {
- PRE_REG_READ5(long, "futex",
+ PRE_REG_READ4(long, "futex",
vki_u32 *, futex, int, op, int, val,
- struct timespec *, utime, int, dummy);
+ struct timespec *, utime);
} else {
- PRE_REG_READ6(long, "futex",
+ /* Note argument 5 is unused, but argument 6 is used.
+ So we cannot just PRE_REG_READ6. Read argument 6 separately. */
+ PRE_REG_READ4(long, "futex",
vki_u32 *, futex, int, op, int, val,
- struct timespec *, utime, int, dummy, int, val3);
+ struct timespec *, utime);
+ PRA6("futex",int,val3);
}
break;
case VKI_FUTEX_WAKE_BITSET:

View File

@ -101,6 +101,9 @@ Patch17: valgrind-3.11.0-x86_unwind.patch
# KDE#358478 drd/tests/std_thread.cpp doesn't build with GCC6 # KDE#358478 drd/tests/std_thread.cpp doesn't build with GCC6
Patch18: valgrind-3.11.0-drd_std_thread.patch Patch18: valgrind-3.11.0-drd_std_thread.patch
# KDE#359201 futex syscall skips argument 5 if op is FUTEX_WAIT_BITSET
Patch19: valgrind-3.11.0-futex.patch
%if %{build_multilib} %if %{build_multilib}
# Ensure glibc{,-devel} is installed for both multilib arches # Ensure glibc{,-devel} is installed for both multilib arches
BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so
@ -223,6 +226,7 @@ Valgrind User Manual for details.
%patch16 -p1 %patch16 -p1
%patch17 -p1 %patch17 -p1
%patch18 -p1 %patch18 -p1
%patch19 -p1
%build %build
# We need to use the software collection compiler and binutils if available. # We need to use the software collection compiler and binutils if available.
@ -417,6 +421,7 @@ echo ===============END TESTING===============
%changelog %changelog
* Wed Feb 17 2016 Mark Wielaard <mjw@redhat.com> * Wed Feb 17 2016 Mark Wielaard <mjw@redhat.com>
- Remove valgrind-3.11.0-no-stv.patch (gcc6 has been fixed). - Remove valgrind-3.11.0-no-stv.patch (gcc6 has been fixed).
- Add valgrind-3.11.0-futex.patch
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.11.0-12 * Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.11.0-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild