3.15.0-0.2.RC1

- Add valgrind-3.15.0-s390x-get-startregs-constraint.patch
- Add valgrind-3.15.0-missing-a-c.patch
- Add valgrind-3.15.0-libstdc++-supp.patch
- Add valgrind-3.15.0-dhat-x86.patch
- Add valgrind-3.15.0-gdb-output1.patch
- Add valgrind-3.15.0-gdb-output2.patch
This commit is contained in:
Mark Wielaard 2019-04-10 01:32:02 +02:00
parent 04ea51f340
commit dd23d3ef80
7 changed files with 283 additions and 1 deletions

View File

@ -0,0 +1,18 @@
commit e63d90d66e8de6d6ec2c92e3b0a32cc165b83369
Author: Mark Wielaard <mark@klomp.org>
Date: Wed Apr 10 01:22:37 2019 +0200
dhat is broken on x86 (32bit)
diff --git a/dhat/dh_main.c b/dhat/dh_main.c
index 47a9327..a933328 100644
--- a/dhat/dh_main.c
+++ b/dhat/dh_main.c
@@ -794,6 +794,7 @@ void dh_handle_noninsn_write ( CorePart part, ThreadId tid,
{
switch (part) {
case Vg_CoreSysCall:
+ case Vg_CoreClientReq:
dh_handle_write(base, size);
break;
case Vg_CoreSignal:

View File

@ -0,0 +1,123 @@
From 97df7b924435c5f7f576972dc924f2c29105edb3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Alexandra=20H=C3=A1jkov=C3=A1?= <ahajkova@redhat.com>
Date: Tue, 9 Apr 2019 11:09:56 +0200
Subject: [PATCH] gdbserver_tests: adjust filtering for the new gdb output
mcsigpass and mcsignopass tests fails due to the slightly different
gdb output. Filter the tests output to make it the same for different
gdb version. Change mcsigpass and mcsignopass .exp to fit filtered
.out.
---
gdbserver_tests/filter_gdb | 1 +
gdbserver_tests/mcsignopass.stdoutB.exp | 24 ++++++++++++------------
gdbserver_tests/mcsigpass.stdoutB.exp | 6 +++---
3 files changed, 16 insertions(+), 15 deletions(-)
diff --git a/gdbserver_tests/filter_gdb b/gdbserver_tests/filter_gdb
index 05bbe4c54..7e6092dd0 100755
--- a/gdbserver_tests/filter_gdb
+++ b/gdbserver_tests/filter_gdb
@@ -139,6 +139,7 @@ sed -e '/Remote debugging using/,/vgdb launched process attached/d'
-e 's/VgTs_WaitSys) 0x/VgTs_WaitSys) 0x/' \
-e '/Cannot access memory at address 0x......../d' \
-e '/\[New Thread/d' \
+ -e 's/0x........ in test/test/' \
-e '/^$/d' |
# remove all the lines telling where the SIGFPE was trapped.
diff --git a/gdbserver_tests/mcsignopass.stdoutB.exp b/gdbserver_tests/mcsignopass.stdoutB.exp
index d77f9832a..18c830be6 100644
--- a/gdbserver_tests/mcsignopass.stdoutB.exp
+++ b/gdbserver_tests/mcsignopass.stdoutB.exp
@@ -6,54 +6,54 @@ Signal Stop Print Pass to program Description
SIGFPE Yes Yes Yes Arithmetic exception
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Signal Stop Print Pass to program Description
SIGSEGV No Yes Yes Segmentation fault
Continuing.
Program received signal SIGSEGV, Segmentation fault.
Program received signal SIGBUS, Bus error.
-0x........ in test3 () at faultstatus.c:126
+test3 () at faultstatus.c:126
126 mapping[FILESIZE+10];
Continuing.
Program received signal SIGFPE, Arithmetic exception.
diff --git a/gdbserver_tests/mcsigpass.stdoutB.exp b/gdbserver_tests/mcsigpass.stdoutB.exp
index de6c2634f..680035836 100644
--- a/gdbserver_tests/mcsigpass.stdoutB.exp
+++ b/gdbserver_tests/mcsigpass.stdoutB.exp
@@ -1,14 +1,14 @@
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test1 () at faultstatus.c:116
+test1 () at faultstatus.c:116
116 *BADADDR = 'x';
Continuing.
Program received signal SIGSEGV, Segmentation fault.
-0x........ in test2 () at faultstatus.c:121
+test2 () at faultstatus.c:121
121 mapping[0] = 'x';
Continuing.
Program received signal SIGBUS, Bus error.
-0x........ in test3 () at faultstatus.c:126
+test3 () at faultstatus.c:126
126 mapping[FILESIZE+10];
Continuing.
Program received signal SIGFPE, Arithmetic exception.
--
2.17.2

View File

@ -0,0 +1,19 @@
commit 983cb6ab1d60c79a8a9c6723815468fc59c4f248
Author: Mark Wielaard <mark@klomp.org>
Date: Wed Apr 10 01:28:24 2019 +0200
Bug 406357
diff --git a/gdbserver_tests/filter_gdb b/gdbserver_tests/filter_gdb
index 05bbe4c..d0ab11d 100755
--- a/gdbserver_tests/filter_gdb
+++ b/gdbserver_tests/filter_gdb
@@ -92,7 +92,7 @@ sed -e '/Remote debugging using/,/vgdb launched process attached/d'
-e 's/^Thread .... received /Program received /' \
-e 's/#[0-9]\( 0x........ in sleeper_or_burner\)/#.\1/' \
-e 's/\(#0 0x........ in do_burn ()\) at sleepers.c:41/\1/' \
- -e '/^Reading symbols from .*\.\.\.done\./d' \
+ -e '/^Reading symbols from .*\.\.\.\(done\.\)\?/d' \
-e '/^Loaded symbols for .*$/d' \
-e '/^Current language.*/d' \
-e '/^The current source language is.*/d' \

View File

@ -0,0 +1,51 @@
commit 751b5736bb597210c5d9de40cb586d4b341bf29a
Author: Mark Wielaard <mark@klomp.org>
Date: Tue Apr 9 16:09:50 2019 +0200
More memcheck/tests/libstdc++.supp suppressions
diff --git a/memcheck/tests/libstdc++.supp b/memcheck/tests/libstdc++.supp
index fad537f..28ab182 100644
--- a/memcheck/tests/libstdc++.supp
+++ b/memcheck/tests/libstdc++.supp
@@ -49,6 +49,9 @@
# still reachable: 72,704 bytes in 1 blocks
# suppressed: 0 bytes in 0 blocks
+# All the following suppressions are variants of
+# _dl_init -> call_init which calls the DT_INIT_ARRAY functions
+
{
malloc-leaks-cxx-stl-string-classes
Memcheck:Leak
@@ -61,6 +64,16 @@
obj:*lib*/ld-2.*.so
}
{
+ malloc-leaks-cxx-stl-string-classes-2
+ Memcheck:Leak
+ match-leak-kinds: reachable
+ fun:malloc
+ obj:*lib*/libstdc++.so*
+ fun:call_init.part.0
+ fun:_dl_init
+ obj:*lib*/ld-2.*.so
+}
+{
malloc-leaks-cxx-stl-string-classes-debug
Memcheck:Leak
match-leak-kinds: reachable
@@ -73,3 +86,13 @@
fun:_dl_init
obj:*lib*/ld-2.*.so
}
+{
+ malloc-leaks-cxx-stl-string-classes-debug2
+ Memcheck:Leak
+ match-leak-kinds: reachable
+ fun:malloc
+ obj:*
+ fun:call_init
+ fun:_dl_init
+ fun:_dl_start_user
+}

View File

@ -0,0 +1,19 @@
commit e5ff7e633a768a421dafbc115c3a3c2f713338db
Author: Mark Wielaard <mark@klomp.org>
Date: Wed Apr 10 00:33:26 2019 +0200
add missing a.c
diff --git a/cachegrind/tests/a.c b/cachegrind/tests/a.c
new file mode 100644
index 0000000..cd1c66e
--- /dev/null
+++ b/cachegrind/tests/a.c
@@ -0,0 +1,7 @@
+int main(void) {
+ int z = 0;
+ for (int i = 0; i < 1000000; i++) {
+ z += i;
+ }
+ return z % 256;
+}

View File

@ -0,0 +1,19 @@
commit b2d2da64b0de1c4d657b63187967b68606e84711
Author: Julian Seward <jseward@acm.org>
Date: Mon Apr 8 14:16:48 2019 +0200
GET_STARTREGS for s390: fix register constraint (per comments from Andreas Arnez).
diff --git a/coregrind/m_libcassert.c b/coregrind/m_libcassert.c
index 6d1cd4c..bb9b92b 100644
--- a/coregrind/m_libcassert.c
+++ b/coregrind/m_libcassert.c
@@ -180,7 +180,7 @@
"std %%f6, 72(%1);" \
"std %%f7, 80(%1);" \
: /* out */ "=r" (ia) \
- : /* in */ "r" (&block[0]) \
+ : /* in */ "a" (&block[0]) \
: /* trash */ "memory" \
); \
(srP)->r_pc = ia; \

View File

@ -3,7 +3,7 @@
Summary: Tool for finding memory management bugs in programs
Name: %{?scl_prefix}valgrind
Version: 3.15.0
Release: 0.1.RC1%{?dist}
Release: 0.2.RC1%{?dist}
Epoch: 1
License: GPLv2+
URL: http://www.valgrind.org/
@ -84,6 +84,25 @@ Patch3: valgrind-3.9.0-ldso-supp.patch
# same directory is used independent of arch.
Patch4: valgrind-3.15.0-pkglibexecdir.patch
# valgrind commit b2d2da64b0de1c4d657b63187967b68606e84711
# GET_STARTREGS for s390: fix register constraint
Patch5: valgrind-3.15.0-s390x-get-startregs-constraint.patch
# KDE#406352 RC1 fails cachegrind/callgrind ann tests because of missing a.c
Patch6: valgrind-3.15.0-missing-a-c.patch
# KDE#406360 memcheck/tests/libstdc++.supp needs more supression variants
Patch7: valgrind-3.15.0-libstdc++-supp.patch
# KDE#406354 dhat is broken on x86 (32bit)
Patch8: valgrind-3.15.0-dhat-x86.patch
# KDE#406355 mcsignopass and mcsigpass fails due to a difference in gdb output
Patch9: valgrind-3.15.0-gdb-output1.patch
# KDE#406357 RC1 fails gdbserver_tests because of gdb output change
Patch10: valgrind-3.15.0-gdb-output2.patch
%if 0%{?fedora} >= 15
BuildRequires: glibc-devel >= 2.14
@ -216,6 +235,12 @@ Valgrind User Manual for details.
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%build
CC=gcc
@ -428,6 +453,14 @@ fi
%endif
%changelog
* Tue Apr 9 2019 Mark Wielaard <mjw@fedoraproject.org> - 3.15.0-0.2.RC1
- Add valgrind-3.15.0-s390x-get-startregs-constraint.patch
- Add valgrind-3.15.0-missing-a-c.patch
- Add valgrind-3.15.0-libstdc++-supp.patch
- Add valgrind-3.15.0-dhat-x86.patch
- Add valgrind-3.15.0-gdb-output1.patch
- Add valgrind-3.15.0-gdb-output2.patch
* Mon Apr 8 2019 Mark Wielaard <mjw@fedoraproject.org> - 3.15.0-0.1.RC1
- Remove patches to prebuild files and always ./autogen.sh.
- Only ever build primary arch. Put tools under libexec.