You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
1
(25) |
2
(25) |
3
(5) |
4
(13) |
|
5
(4) |
6
(8) |
7
(6) |
8
|
9
(10) |
10
(15) |
11
(9) |
|
12
(14) |
13
(10) |
14
(24) |
15
(41) |
16
(13) |
17
(9) |
18
(3) |
|
19
(10) |
20
(11) |
21
(28) |
22
(36) |
23
(52) |
24
(36) |
25
(12) |
|
26
(31) |
27
(27) |
28
(20) |
29
(15) |
30
(22) |
31
(17) |
|
|
From: Nicholas N. <n.n...@gm...> - 2009-07-29 23:39:42
|
On Tue, Jul 28, 2009 at 1:30 PM, Florian Krohm<br...@ac...> wrote: >> >> I thought about putting "Command:" in front of every line, to make it >> easier to parse the text, but then I figure if you want to do that you >> should really be using the XML output. > > Right. It would be even better to not have the process ID on every line. > That way you can use the mouse to select the command line and then paste > it into the shell again. I use that frequently and find it handy. The PID > would get in the way there. I understand your point, but kept it as is because I think it's more important that every Valgrind output line is prefixed with something consistent. I guess there's an argument to be made then to not wrap the command... either way is imperfect... :/ > I definitely like the shortened preamble. Good! Nick |
|
From: <sv...@va...> - 2009-07-29 23:34:57
|
Author: njn
Date: 2009-07-30 00:34:49 +0100 (Thu, 30 Jul 2009)
New Revision: 10657
Log:
Print the command being run at startup. It wraps to avoid going over 80
chars wide whenever possible. Finishes off bug 197933.
Added:
trunk/none/tests/filter_long_command
trunk/none/tests/long-command.stderr.exp
trunk/none/tests/long-command.vgtest
Modified:
trunk/NEWS
trunk/coregrind/m_main.c
trunk/docs/xml/manual-writing-tools.xml
trunk/none/tests/Makefile.am
trunk/none/tests/filter_timestamp
trunk/tests/filter_stderr_basic
Modified: trunk/NEWS
===================================================================
--- trunk/NEWS 2009-07-29 11:09:01 UTC (rev 10656)
+++ trunk/NEWS 2009-07-29 23:34:49 UTC (rev 10657)
@@ -31,6 +31,16 @@
* XXX: exp-bbv has been added...
+* Valgrind's start-up message has changed. It is shorter but also includes
+ the command being run, which makes it easier to use --trace-children=yes.
+ An example:
+
+==3050== Memcheck, a memory error detector.
+==3050== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al.
+==3050== Using Valgrind-3.5.0.SVN and LibVEX; rerun with -h for copyright info
+==3050== Command: ls -l
+==3050==
+
* A new Memcheck client request VALGRIND_COUNT_LEAK_BLOCKS has been added.
It is similar to VALGRIND_COUNT_LEAKS but counts blocks instead of bytes.
[XXX: consider adding VALGRIND_COUNT_LEAK_BYTES as a synonym and
Modified: trunk/coregrind/m_main.c
===================================================================
--- trunk/coregrind/m_main.c 2009-07-29 11:09:01 UTC (rev 10656)
+++ trunk/coregrind/m_main.c 2009-07-29 23:34:49 UTC (rev 10657)
@@ -967,6 +967,7 @@
const HChar* toolname )
{
Int i;
+ SizeT n;
HChar* xpre = VG_(clo_xml) ? " <line>" : "";
HChar* xpost = VG_(clo_xml) ? "</line>" : "";
UInt (*umsg_or_xml)( const HChar*, ... )
@@ -1017,6 +1018,35 @@
xpre, VERSION, xpost
);
+ /* Print the command line, wrapping near 80-chars wide. An example of a
+ command line with many args, some of them very long:
+
+==9717== Command: date 11 23 4a \
+==9717== aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa \
+==9717== aaa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 \
+==9717== 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 \
+==9717== fffffffffffffffffffffffffffff 1 2 3 \
+==9717== bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
+ */
+ VG_(umsg)("Command: ");
+ if (VG_(args_the_exename))
+ VG_(umsg)("%s", VG_(args_the_exename));
+ n = 0;
+ for (i = 0; i < VG_(sizeXA)( VG_(args_for_client) ); i++) {
+ HChar* s = *(HChar**)VG_(indexXA)( VG_(args_for_client), i );
+ SizeT slen = VG_(strlen)(s);
+ n += slen + 1; // +1 for the space char between each argument
+ // With a PID of up to 5 digits, 58 puts the line-ending '\' in
+ // column 79 at the most, always leaving column 80 empty.
+ if (n > 58) {
+ VG_(umsg)(" \\");
+ VG_(umsg)("\n ");
+ n = slen;
+ }
+ VG_(umsg)(" %s", s);
+ }
+ VG_(umsg)("\n");
+
if (VG_(clo_xml))
VG_(printf_xml)("</preamble>\n");
}
@@ -1091,15 +1121,7 @@
VexArchInfo vex_archinfo;
if (!logging_to_fd)
VG_(message)(Vg_DebugMsg, "\n");
- VG_(message)(Vg_DebugMsg, "Command line\n");
- if (VG_(args_the_exename))
- VG_(message)(Vg_DebugMsg, " %s\n", VG_(args_the_exename));
- for (i = 0; i < VG_(sizeXA)( VG_(args_for_client) ); i++)
- VG_(message)(Vg_DebugMsg,
- " %s\n",
- * (HChar**) VG_(indexXA)( VG_(args_for_client), i ));
-
- VG_(message)(Vg_DebugMsg, "Startup, with flags:\n");
+ VG_(message)(Vg_DebugMsg, "Valgrind flags:\n");
for (i = 0; i < VG_(sizeXA)( VG_(args_for_valgrind) ); i++) {
VG_(message)(Vg_DebugMsg,
" %s\n",
@@ -1113,10 +1135,10 @@
} else {
# define BUF_LEN 256
Char version_buf[BUF_LEN];
- Int n = VG_(read) ( sr_Res(fd), version_buf, BUF_LEN );
- vg_assert(n <= BUF_LEN);
- if (n > 0) {
- version_buf[n-1] = '\0';
+ Int nn = VG_(read) ( sr_Res(fd), version_buf, BUF_LEN );
+ vg_assert(nn <= BUF_LEN);
+ if (nn > 0) {
+ version_buf[nn-1] = '\0';
VG_(message)(Vg_DebugMsg, " %s\n", version_buf);
} else {
VG_(message)(Vg_DebugMsg, " (empty?)\n");
Modified: trunk/docs/xml/manual-writing-tools.xml
===================================================================
--- trunk/docs/xml/manual-writing-tools.xml 2009-07-29 11:09:01 UTC (rev 10656)
+++ trunk/docs/xml/manual-writing-tools.xml 2009-07-29 23:34:49 UTC (rev 10657)
@@ -153,13 +153,10 @@
<computeroutput>date</computeroutput> is just an example).
The output should be something like this:</para>
<programlisting><![CDATA[
- ==738== foobar-0.0.1, a foobarring tool for x86-linux.
- ==738== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
- ==738== Using LibVEX rev 1791, a library for dynamic binary translation.
- ==738== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
- ==738== Using valgrind-3.3.0, a dynamic binary instrumentation framework.
- ==738== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
- ==738== For more details, rerun with: -v
+ ==738== foobar-0.0.1, a foobarring tool.
+ ==738== Copyright (C) 2002-2009, and GNU GPL'd, by J. Programmer.
+ ==738== Using Valgrind-3.5.0.SVN and LibVEX; rerun with -h for copyright info
+ ==738== Command: date
==738==
Tue Nov 27 12:40:49 EST 2007
==738==]]></programlisting>
Modified: trunk/none/tests/Makefile.am
===================================================================
--- trunk/none/tests/Makefile.am 2009-07-29 11:09:01 UTC (rev 10656)
+++ trunk/none/tests/Makefile.am 2009-07-29 23:34:49 UTC (rev 10657)
@@ -34,8 +34,9 @@
dist_noinst_SCRIPTS = \
filter_cmdline0 \
+ filter_fdleak \
filter_linenos \
- filter_fdleak \
+ filter_long_command \
filter_none_discards \
filter_stderr \
filter_timestamp
@@ -79,6 +80,7 @@
fork.stderr.exp fork.stdout.exp fork.vgtest \
fucomip.stderr.exp fucomip.vgtest \
gxx304.stderr.exp gxx304.vgtest \
+ long-command.stderr.exp long-command.vgtest \
manythreads.stdout.exp manythreads.stderr.exp manythreads.vgtest \
map_unaligned.stderr.exp map_unaligned.vgtest \
map_unmap.stderr.exp map_unmap.stdout.exp map_unmap.vgtest \
Added: trunk/none/tests/filter_long_command
===================================================================
--- trunk/none/tests/filter_long_command (rev 0)
+++ trunk/none/tests/filter_long_command 2009-07-29 23:34:49 UTC (rev 10657)
@@ -0,0 +1,9 @@
+#! /bin/sh
+
+dir=`dirname $0`
+
+# We change the "Command:" so it doesn't get stripped out by the standard
+# filters.
+sed "s/Command:/COMMAND:/" |
+
+./filter_stderr
Property changes on: trunk/none/tests/filter_long_command
___________________________________________________________________
Name: svn:executable
+ *
Modified: trunk/none/tests/filter_timestamp
===================================================================
--- trunk/none/tests/filter_timestamp 2009-07-29 11:09:01 UTC (rev 10656)
+++ trunk/none/tests/filter_timestamp 2009-07-29 23:34:49 UTC (rev 10657)
@@ -11,6 +11,7 @@
sed "/ Nulgrind.*$/ d" |
sed "/ Copyright.*$/ d" |
sed "/ Using Valgrind.*$/ d" |
+sed "/ Command:.*$/ d" |
$dir/filter_stderr |
Added: trunk/none/tests/long-command.stderr.exp
===================================================================
--- trunk/none/tests/long-command.stderr.exp (rev 0)
+++ trunk/none/tests/long-command.stderr.exp 2009-07-29 23:34:49 UTC (rev 10657)
@@ -0,0 +1,10 @@
+COMMAND: ./../../tests/true 11 23 4a \
+ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa \
+ aaa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 \
+ 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 \
+ fffffffffffffffffffffffffffff 1 2 3 \
+ bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb 1 2 3 4 1 \
+ 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 \
+ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
+
+
Added: trunk/none/tests/long-command.vgtest
===================================================================
--- trunk/none/tests/long-command.vgtest (rev 0)
+++ trunk/none/tests/long-command.vgtest 2009-07-29 23:34:49 UTC (rev 10657)
@@ -0,0 +1,2 @@
+prog: ../../tests/true 11 23 4a aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 fffffffffffffffffffffffffffff 1 2 3 bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
+stderr_filter: filter_long_command
Modified: trunk/tests/filter_stderr_basic
===================================================================
--- trunk/tests/filter_stderr_basic 2009-07-29 11:09:01 UTC (rev 10656)
+++ trunk/tests/filter_stderr_basic 2009-07-29 23:34:49 UTC (rev 10657)
@@ -15,6 +15,10 @@
# Remove any --pid:0: strings (debuglog level zero output)
sed "/^--[0-9]\{1,7\}:0:*/d" |
+# Remove "Command: line". (If wrapping occurs, it won't remove the
+# subsequent lines...)
+sed "/^Command: .*$/d" |
+
# Remove "WARNING: assuming toc 0x.." strings
sed "/^WARNING: assuming toc 0x*/d" |
|
|
From: <sv...@va...> - 2009-07-29 23:24:17
|
Author: njn Date: 2009-07-30 00:24:01 +0100 (Thu, 30 Jul 2009) New Revision: 404 Log: Add a note about patches for feature requests. Modified: trunk/support/features.html Modified: trunk/support/features.html =================================================================== --- trunk/support/features.html 2009-07-14 05:00:33 UTC (rev 403) +++ trunk/support/features.html 2009-07-29 23:24:01 UTC (rev 404) @@ -8,3 +8,8 @@ requested by several users, and not too complicated. If you provide a good patch implementing a feature, that will help your chances too.</p> + +<p>If you do provide a patch, please also note that a new feature involves +adding more than just code. It also requires adding one or more regression +tests, and updating the documentation (both the User Manual and the release +notes in the NEWS file).</p> |
|
From: Nicholas N. <n.n...@gm...> - 2009-07-29 17:24:01
|
Nightly build on ocean32 ( Ubuntu 9.04, x86_64 (32-bit only) )
Started at 2009-07-30 03:00:01 EST
Ended at 2009-07-30 03:23:48 EST
Results unchanged from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 481 tests, 9 stderr failures, 1 stdout failure, 0 post failures ==
memcheck/tests/origin5-bz2 (stderr)
none/tests/empty-exe (stderr)
none/tests/shell (stdout)
none/tests/shell (stderr)
none/tests/shell_valid1 (stderr)
none/tests/shell_valid2 (stderr)
none/tests/shell_valid3 (stderr)
none/tests/shell_zerolength (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
exp-ptrcheck/tests/supp (stderr)
=================================================
./valgrind-new/exp-ptrcheck/tests/supp.stderr.diff
=================================================
--- supp.stderr.exp 2009-07-30 03:13:24.000000000 +1000
+++ supp.stderr.out 2009-07-30 03:23:44.000000000 +1000
@@ -1,7 +1,7 @@
Syscall param write(buf) is non-contiguous
- at 0x........: write (in /...libc...)
- by 0x........: main (supp.c:16)
+ at 0x........: ??? (in /lib32/ld-2.9.so)
+ by 0x........: (below main)
First byte (0x........) is 3 bytes inside a 6-byte block alloc'd
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (supp.c:12)
=================================================
./valgrind-new/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2009-07-30 03:13:21.000000000 +1000
+++ tc06_two_races_xml.stderr.out 2009-07-30 03:21:12.000000000 +1000
@@ -43,16 +43,6 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>do_clone</fn>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>pthread_create@@GLIBC_2.2.5</fn>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
<fn>pthread_create_WRK</fn>
<dir>...</dir>
<file>hg_intercepts.c</file>
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2009-07-30 03:13:41.000000000 +1000
+++ origin5-bz2.stderr.out 2009-07-30 03:18:36.000000000 +1000
@@ -11,7 +11,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -19,7 +19,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -27,7 +27,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -38,7 +38,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -49,7 +49,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2854)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -60,7 +60,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2858)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -71,7 +71,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -82,7 +82,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -93,7 +93,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -104,7 +104,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: fallbackSort (origin5-bz2.c:2275)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2009-07-30 03:13:41.000000000 +1000
+++ origin5-bz2.stderr.out 2009-07-30 03:18:36.000000000 +1000
@@ -28,7 +28,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+ at 0x........: mainSort (origin5-bz2.c:2820)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -38,7 +39,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+ at 0x........: mainSort (origin5-bz2.c:2823)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -48,7 +50,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2855)
+ at 0x........: mainSort (origin5-bz2.c:2854)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -58,7 +61,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2859)
+ at 0x........: mainSort (origin5-bz2.c:2858)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -68,7 +72,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+ at 0x........: mainSort (origin5-bz2.c:2963)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -78,7 +83,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2964)
+ at 0x........: mainSort (origin5-bz2.c:2964)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2009-07-30 03:13:41.000000000 +1000
+++ origin5-bz2.stderr.out 2009-07-30 03:18:36.000000000 +1000
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: handle_compress (origin5-bz2.c:4686)
@@ -9,85 +9,91 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2820)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2823)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2854)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2854)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2858)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2858)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2963)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
<truncated beyond 100 lines>
=================================================
./valgrind-new/none/tests/empty-exe.stderr.diff
=================================================
--- empty-exe.stderr.exp 2009-07-30 03:14:06.000000000 +1000
+++ empty-exe.stderr.out 2009-07-30 03:20:00.000000000 +1000
@@ -1,2 +1,2 @@
-
-
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./empty-exe: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-new/none/tests/shell.stderr.diff
=================================================
--- shell.stderr.exp 2009-07-30 03:14:06.000000000 +1000
+++ shell.stderr.out 2009-07-30 03:20:23.000000000 +1000
@@ -1,8 +1,3 @@
-./shell: ./x86/: is a directory
-./shell: ./shell.vgtest: Permission denied
-execve(0x........(./shell_badinterp), 0x........, 0x........) failed, errno 2
-EXEC FAILED: I can't recover from execve() failing, so I'm dying.
-Add more stringent tests in PRE(sys_execve), or work out how to recover.
-./shell: ./shell_binaryfile: cannot execute binary file
-./shell: ./shell_nosuchfile: No such file or directory
-./shell: shell_nosuchfile: command not found
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-new/none/tests/shell.stderr.diff-dash
=================================================
--- shell.stderr.exp-dash 2009-07-30 03:14:06.000000000 +1000
+++ shell.stderr.out 2009-07-30 03:20:23.000000000 +1000
@@ -1,8 +1,3 @@
-./shell: 10: ./x86/: Permission denied
-./shell: 13: ./shell.vgtest: Permission denied
-execve(0x........(./shell_badinterp), 0x........, 0x........) failed, errno 2
-EXEC FAILED: I can't recover from execve() failing, so I'm dying.
-Add more stringent tests in PRE(sys_execve), or work out how to recover.
-./shell_binaryfile: 4: Syntax error: ")" unexpected
-./shell: 22: ./shell_nosuchfile: not found
-./shell: 25: shell_nosuchfile: not found
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-new/none/tests/shell.stdout.diff
=================================================
--- shell.stdout.exp 2009-07-30 03:14:06.000000000 +1000
+++ shell.stdout.out 2009-07-30 03:20:23.000000000 +1000
@@ -1,10 +0,0 @@
-Execute a directory
-Execute a non-executable file
-Execute a script with a bad interpreter name
-Execute a binary file
-Execute a non-existent file
-Execute a non-existent file (2)
-Execute a valid script with a #! line
-Execute a valid script without a #! line
-Execute a valid script with #! but no interpname
-Execute a zero-length file
=================================================
./valgrind-new/none/tests/shell_valid1.stderr.diff
=================================================
--- shell_valid1.stderr.exp 2009-07-30 03:14:06.000000000 +1000
+++ shell_valid1.stderr.out 2009-07-30 03:20:23.000000000 +1000
@@ -0,0 +1,3 @@
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_valid1: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-new/none/tests/shell_valid2.stderr.diff
=================================================
--- shell_valid2.stderr.exp 2009-07-30 03:14:06.000000000 +1000
+++ shell_valid2.stderr.out 2009-07-30 03:20:23.000000000 +1000
@@ -0,0 +1,2 @@
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_valid2: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-new/none/tests/shell_valid3.stderr.diff
=================================================
--- shell_valid3.stderr.exp 2009-07-30 03:14:06.000000000 +1000
+++ shell_valid3.stderr.out 2009-07-30 03:20:23.000000000 +1000
@@ -0,0 +1,2 @@
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_valid3: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-new/none/tests/shell_zerolength.stderr.diff
=================================================
--- shell_zerolength.stderr.exp 2009-07-30 03:14:06.000000000 +1000
+++ shell_zerolength.stderr.out 2009-07-30 03:20:23.000000000 +1000
@@ -0,0 +1,2 @@
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_zerolength: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-new/none/tests/shell_zerolength.stderr.diff-dash
=================================================
--- shell_zerolength.stderr.exp-dash 2009-07-30 03:14:06.000000000 +1000
+++ shell_zerolength.stderr.out 2009-07-30 03:20:23.000000000 +1000
@@ -1 +1,2 @@
-Bus error
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_zerolength: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-old/exp-ptrcheck/tests/supp.stderr.diff
=================================================
--- supp.stderr.exp 2009-07-30 03:00:41.000000000 +1000
+++ supp.stderr.out 2009-07-30 03:13:00.000000000 +1000
@@ -1,7 +1,7 @@
Syscall param write(buf) is non-contiguous
- at 0x........: write (in /...libc...)
- by 0x........: main (supp.c:16)
+ at 0x........: ??? (in /lib32/ld-2.9.so)
+ by 0x........: (below main)
First byte (0x........) is 3 bytes inside a 6-byte block alloc'd
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (supp.c:12)
=================================================
./valgrind-old/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2009-07-30 03:00:33.000000000 +1000
+++ tc06_two_races_xml.stderr.out 2009-07-30 03:10:18.000000000 +1000
@@ -43,16 +43,6 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>do_clone</fn>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>pthread_create@@GLIBC_2.2.5</fn>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
<fn>pthread_create_WRK</fn>
<dir>...</dir>
<file>hg_intercepts.c</file>
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2009-07-30 03:01:29.000000000 +1000
+++ origin5-bz2.stderr.out 2009-07-30 03:07:43.000000000 +1000
@@ -11,7 +11,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -19,7 +19,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -27,7 +27,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -38,7 +38,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -49,7 +49,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2854)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -60,7 +60,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2858)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -71,7 +71,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -82,7 +82,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -93,7 +93,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -104,7 +104,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: fallbackSort (origin5-bz2.c:2275)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2009-07-30 03:01:29.000000000 +1000
+++ origin5-bz2.stderr.out 2009-07-30 03:07:43.000000000 +1000
@@ -28,7 +28,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+ at 0x........: mainSort (origin5-bz2.c:2820)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -38,7 +39,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+ at 0x........: mainSort (origin5-bz2.c:2823)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -48,7 +50,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2855)
+ at 0x........: mainSort (origin5-bz2.c:2854)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -58,7 +61,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2859)
+ at 0x........: mainSort (origin5-bz2.c:2858)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -68,7 +72,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+ at 0x........: mainSort (origin5-bz2.c:2963)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -78,7 +83,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2964)
+ at 0x........: mainSort (origin5-bz2.c:2964)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2009-07-30 03:01:29.000000000 +1000
+++ origin5-bz2.stderr.out 2009-07-30 03:07:43.000000000 +1000
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: handle_compress (origin5-bz2.c:4686)
@@ -9,85 +9,91 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2820)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2823)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2854)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2854)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2858)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2858)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2963)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
<truncated beyond 100 lines>
=================================================
./valgrind-old/none/tests/empty-exe.stderr.diff
=================================================
--- empty-exe.stderr.exp 2009-07-30 03:02:22.000000000 +1000
+++ empty-exe.stderr.out 2009-07-30 03:09:06.000000000 +1000
@@ -1,2 +1,2 @@
-
-
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./empty-exe: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-old/none/tests/shell.stderr.diff
=================================================
--- shell.stderr.exp 2009-07-30 03:02:22.000000000 +1000
+++ shell.stderr.out 2009-07-30 03:09:27.000000000 +1000
@@ -1,8 +1,3 @@
-./shell: ./x86/: is a directory
-./shell: ./shell.vgtest: Permission denied
-execve(0x........(./shell_badinterp), 0x........, 0x........) failed, errno 2
-EXEC FAILED: I can't recover from execve() failing, so I'm dying.
-Add more stringent tests in PRE(sys_execve), or work out how to recover.
-./shell: ./shell_binaryfile: cannot execute binary file
-./shell: ./shell_nosuchfile: No such file or directory
-./shell: shell_nosuchfile: command not found
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-old/none/tests/shell.stderr.diff-dash
=================================================
--- shell.stderr.exp-dash 2009-07-30 03:02:22.000000000 +1000
+++ shell.stderr.out 2009-07-30 03:09:27.000000000 +1000
@@ -1,8 +1,3 @@
-./shell: 10: ./x86/: Permission denied
-./shell: 13: ./shell.vgtest: Permission denied
-execve(0x........(./shell_badinterp), 0x........, 0x........) failed, errno 2
-EXEC FAILED: I can't recover from execve() failing, so I'm dying.
-Add more stringent tests in PRE(sys_execve), or work out how to recover.
-./shell_binaryfile: 4: Syntax error: ")" unexpected
-./shell: 22: ./shell_nosuchfile: not found
-./shell: 25: shell_nosuchfile: not found
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-old/none/tests/shell.stdout.diff
=================================================
--- shell.stdout.exp 2009-07-30 03:02:22.000000000 +1000
+++ shell.stdout.out 2009-07-30 03:09:27.000000000 +1000
@@ -1,10 +0,0 @@
-Execute a directory
-Execute a non-executable file
-Execute a script with a bad interpreter name
-Execute a binary file
-Execute a non-existent file
-Execute a non-existent file (2)
-Execute a valid script with a #! line
-Execute a valid script without a #! line
-Execute a valid script with #! but no interpname
-Execute a zero-length file
=================================================
./valgrind-old/none/tests/shell_valid1.stderr.diff
=================================================
--- shell_valid1.stderr.exp 2009-07-30 03:02:22.000000000 +1000
+++ shell_valid1.stderr.out 2009-07-30 03:09:27.000000000 +1000
@@ -0,0 +1,3 @@
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_valid1: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-old/none/tests/shell_valid2.stderr.diff
=================================================
--- shell_valid2.stderr.exp 2009-07-30 03:02:22.000000000 +1000
+++ shell_valid2.stderr.out 2009-07-30 03:09:27.000000000 +1000
@@ -0,0 +1,2 @@
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_valid2: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-old/none/tests/shell_valid3.stderr.diff
=================================================
--- shell_valid3.stderr.exp 2009-07-30 03:02:22.000000000 +1000
+++ shell_valid3.stderr.out 2009-07-30 03:09:27.000000000 +1000
@@ -0,0 +1,2 @@
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_valid3: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-old/none/tests/shell_zerolength.stderr.diff
=================================================
--- shell_zerolength.stderr.exp 2009-07-30 03:02:22.000000000 +1000
+++ shell_zerolength.stderr.out 2009-07-30 03:09:27.000000000 +1000
@@ -0,0 +1,2 @@
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_zerolength: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind-old/none/tests/shell_zerolength.stderr.diff-dash
=================================================
--- shell_zerolength.stderr.exp-dash 2009-07-30 03:02:22.000000000 +1000
+++ shell_zerolength.stderr.out 2009-07-30 03:09:27.000000000 +1000
@@ -1 +1,2 @@
-Bus error
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_zerolength: bad interpreter (/bin/sh): VG_(strerror): unknown error
|
|
From: Rich C. <Ric...@me...> - 2009-07-29 17:02:57
|
Nightly build on macbook ( Darwin 9.6.0 i386 )
Started at 2009-07-28 17:30:08 CDT
Ended at 2009-07-28 17:52:53 CDT
Results differ from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 379 tests, 6 stderr failures, 1 stdout failure, 0 post failures ==
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/varinfo3 (stderr)
memcheck/tests/varinfo5 (stderr)
memcheck/tests/vcpu_fnfns (stdout)
none/tests/async-sigs (stderr)
none/tests/faultstatus (stderr)
none/tests/pth_blockedsig (stderr)
=================================================
== Results from 24 hours ago ==
=================================================
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 382 tests, 9 stderr failures, 2 stdout failures, 0 post failures ==
memcheck/tests/lsframe1 (stderr)
memcheck/tests/lsframe2 (stderr)
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/stack_changes (stdout)
memcheck/tests/stack_changes (stderr)
memcheck/tests/varinfo3 (stderr)
memcheck/tests/varinfo5 (stderr)
memcheck/tests/vcpu_fnfns (stdout)
none/tests/async-sigs (stderr)
none/tests/faultstatus (stderr)
none/tests/pth_blockedsig (stderr)
=================================================
== Difference between 24 hours ago and now ==
=================================================
*** old.short 2009-07-28 17:42:02.000000000 -0500
--- new.short 2009-07-28 17:52:53.000000000 -0500
***************
*** 8,15 ****
! == 382 tests, 9 stderr failures, 2 stdout failures, 0 post failures ==
! memcheck/tests/lsframe1 (stderr)
! memcheck/tests/lsframe2 (stderr)
memcheck/tests/origin5-bz2 (stderr)
- memcheck/tests/stack_changes (stdout)
- memcheck/tests/stack_changes (stderr)
memcheck/tests/varinfo3 (stderr)
--- 8,11 ----
! == 379 tests, 6 stderr failures, 1 stdout failure, 0 post failures ==
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/varinfo3 (stderr)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2009-07-28 17:42:13.000000000 -0500
+++ origin5-bz2.stderr.out 2009-07-28 17:47:51.000000000 -0500
@@ -11,7 +11,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -19,7 +19,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -27,7 +27,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -38,7 +38,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -49,8 +49,8 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: mainSort (origin5-bz2.c:2854)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2855)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
@@ -60,8 +60,8 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: mainSort (origin5-bz2.c:2858)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2859)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
@@ -71,7 +71,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -82,7 +82,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -93,7 +93,18 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2964)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
+ by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
+ by 0x........: handle_compress (origin5-bz2.c:4753)
+ by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
+ by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
+ by 0x........: main (origin5-bz2.c:6484)
+ Uninitialised value was created by a client request
+ at 0x........: main (origin5-bz2.c:6479)
+
+Use of uninitialised value of size 4
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -104,7 +115,7 @@
Uninitialised value was created by a client request
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2009-07-28 17:42:16.000000000 -0500
+++ origin5-bz2.stderr.out 2009-07-28 17:47:51.000000000 -0500
@@ -28,7 +28,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+ at 0x........: mainSort (origin5-bz2.c:2820)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -38,7 +39,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+ at 0x........: mainSort (origin5-bz2.c:2823)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -48,7 +50,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2855)
+ at 0x........: mainSort (origin5-bz2.c:2855)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -58,7 +61,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2859)
+ at 0x........: mainSort (origin5-bz2.c:2859)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -68,7 +72,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+ at 0x........: mainSort (origin5-bz2.c:2963)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -78,7 +83,19 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2964)
+ at 0x........: mainSort (origin5-bz2.c:2964)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
+ by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
+ by 0x........: handle_compress (origin5-bz2.c:4753)
+ by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
+ by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
+ by 0x........: main (origin5-bz2.c:6484)
+ Uninitialised value was created by a client request
+ at 0x........: main (origin5-bz2.c:6479)
+
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2964)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2009-07-28 17:42:13.000000000 -0500
+++ origin5-bz2.stderr.out 2009-07-28 17:47:51.000000000 -0500
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: handle_compress (origin5-bz2.c:4686)
@@ -9,85 +9,102 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2820)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2823)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2854)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2855)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2858)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2859)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2963)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/varinfo3.stderr.diff
=================================================
--- varinfo3.stderr.exp 2009-07-28 17:42:13.000000000 -0500
+++ varinfo3.stderr.out 2009-07-28 17:48:33.000000000 -0500
@@ -31,7 +31,7 @@
by 0x........: bar (varinfo3.c:42)
by 0x........: foo (varinfo3.c:58)
by 0x........: main (varinfo3.c:66)
- Address 0x........ is 5 bytes inside data symbol "static_local_def.XXXX"
+ Address 0x........ is in the Data segment of ./varinfo3
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo3.c:28)
@@ -46,7 +46,7 @@
by 0x........: bar (varinfo3.c:44)
by 0x........: foo (varinfo3.c:58)
by 0x........: main (varinfo3.c:66)
- Address 0x........ is 7 bytes inside data symbol "static_local_undef.XXXX"
+ Address 0x........ is in the Data segment of ./varinfo3
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo3.c:28)
=================================================
./valgrind-new/memcheck/tests/varinfo5.stderr.diff
=================================================
--- varinfo5.stderr.exp 2009-07-28 17:42:15.000000000 -0500
+++ varinfo5.stderr.out 2009-07-28 17:48:35.000000000 -0500
@@ -119,7 +119,7 @@
by 0x........: varinfo3_main (varinfo5so.c:118)
by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
- Address 0x........ is 5 bytes inside data symbol "static_local_def.XXXX"
+ Address 0x........ is in the Data segment of /Users/coe/src/vg/nightly/valgrind-new/memcheck/tests/varinfo5so.so
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
@@ -138,7 +138,7 @@
by 0x........: varinfo3_main (varinfo5so.c:118)
by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
- Address 0x........ is 7 bytes inside data symbol "static_local_undef.XXXX"
+ Address 0x........ is in the Data segment of /Users/coe/src/vg/nightly/valgrind-new/memcheck/tests/varinfo5so.so
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
=================================================
./valgrind-new/memcheck/tests/vcpu_fnfns.stdout.diff
=================================================
--- vcpu_fnfns.stdout.exp 2009-07-28 17:42:13.000000000 -0500
+++ vcpu_fnfns.stdout.out 2009-07-28 17:48:40.000000000 -0500
@@ -91,16 +91,16 @@
ceilD(-1.2000000008000e+00) = -1.0000000000000e+00
ceilD(-1.1000000009000e+00) = -1.0000000000000e+00
ceilD(-1.0000000010000e+00) = -1.0000000000000e+00
- ceilD(-9.0000000110000e-01) = -0.0000000000000e+00
- ceilD(-8.0000000120000e-01) = -0.0000000000000e+00
- ceilD(-7.0000000130000e-01) = -0.0000000000000e+00
- ceilD(-6.0000000140000e-01) = -0.0000000000000e+00
- ceilD(-5.0000000150000e-01) = -0.0000000000000e+00
- ceilD(-4.0000000160000e-01) = -0.0000000000000e+00
- ceilD(-3.0000000170000e-01) = -0.0000000000000e+00
- ceilD(-2.0000000180000e-01) = -0.0000000000000e+00
- ceilD(-1.0000000190000e-01) = -0.0000000000000e+00
- ceilD(-1.9999992495467e-09) = -0.0000000000000e+00
+ ceilD(-9.0000000110000e-01) = +0.0000000000000e+00
+ ceilD(-8.0000000120000e-01) = +0.0000000000000e+00
+ ceilD(-7.0000000130000e-01) = +0.0000000000000e+00
+ ceilD(-6.0000000140000e-01) = +0.0000000000000e+00
+ ceilD(-5.0000000150000e-01) = +0.0000000000000e+00
+ ceilD(-4.0000000160000e-01) = +0.0000000000000e+00
+ ceilD(-3.0000000170000e-01) = +0.0000000000000e+00
+ ceilD(-2.0000000180000e-01) = +0.0000000000000e+00
+ ceilD(-1.0000000190000e-01) = +0.0000000000000e+00
+ ceilD(-1.9999992495467e-09) = +0.0000000000000e+00
ceilD(+9.9999997900001e-02) = +1.0000000000000e+00
ceilD(+1.9999999780000e-01) = +1.0000000000000e+00
ceilD(+2.9999999770000e-01) = +1.0000000000000e+00
@@ -132,16 +132,16 @@
ceilF( -1.2008e+00) = -1.0000e+00
ceilF( -1.1009e+00) = -1.0000e+00
ceilF( -1.0010e+00) = -1.0000e+00
- ceilF( -9.0110e-01) = -0.0000e+00
- ceilF( -8.0120e-01) = -0.0000e+00
- ceilF( -7.0130e-01) = -0.0000e+00
- ceilF( -6.0140e-01) = -0.0000e+00
- ceilF( -5.0150e-01) = -0.0000e+00
- ceilF( -4.0160e-01) = -0.0000e+00
- ceilF( -3.0170e-01) = -0.0000e+00
- ceilF( -2.0180e-01) = -0.0000e+00
- ceilF( -1.0190e-01) = -0.0000e+00
- ceilF( -1.9999e-03) = -0.0000e+00
+ ceilF( -9.0110e-01) = +0.0000e+00
+ ceilF( -8.0120e-01) = +0.0000e+00
+ ceilF( -7.0130e-01) = +0.0000e+00
+ ceilF( -6.0140e-01) = +0.0000e+00
+ ceilF( -5.0150e-01) = +0.0000e+00
+ ceilF( -4.0160e-01) = +0.0000e+00
+ ceilF( -3.0170e-01) = +0.0000e+00
+ ceilF( -2.0180e-01) = +0.0000e+00
+ ceilF( -1.0190e-01) = +0.0000e+00
+ ceilF( -1.9999e-03) = +0.0000e+00
ceilF( +9.7900e-02) = +1.0000e+00
ceilF( +1.9780e-01) = +1.0000e+00
ceilF( +2.9770e-01) = +1.0000e+00
@@ -305,7 +305,7 @@
cosF( -3.0170e-01) = +9.5483e-01
cosF( -2.0180e-01) = +9.7971e-01
cosF( -1.0190e-01) = +9.9481e-01
- cosF( -1.9999e-03) = +1.0000e-00
+ cosF( -1.9999e-03) = +1.0000e+00
cosF( +9.7900e-02) = +9.9521e-01
cosF( +1.9780e-01) = +9.8050e-01
cosF( +2.9770e-01) = +9.5601e-01
@@ -536,7 +536,7 @@
logD(+9.9999999900000e-02) = -2.3025850939940e+00
logD(+1.9999999980000e-01) = -1.6094379134341e+00
logD(+2.9999999970000e-01) = -1.2039728053259e+00
- logD(+3.9999999960000e-01) = -9.1629073287415e-01
+ logD(+3.9999999960000e-01) = -9.1629073287416e-01
logD(+4.9999999950000e-01) = -6.9314718155995e-01
logD(+5.9999999940000e-01) = -5.1082562476599e-01
logD(+6.9999999930000e-01) = -3.5667494493873e-01
@@ -617,7 +617,7 @@
log10F( +1.8981e+00) = +2.7832e-01
log10F( +1.9980e+00) = +3.0060e-01
asinD(-1.0000000000000e+00) = -1.5707963267949e+00
- asinD(-9.0000000010000e-01) = -1.1197695152281e+00
+ asinD(-9.0000000010000e-01) = -1.1197695152280e+00
asinD(-8.0000000020000e-01) = -9.2729521833495e-01
asinD(-7.0000000030000e-01) = -7.7539749703084e-01
asinD(-6.0000000040000e-01) = -6.4350110929328e-01
=================================================
./valgrind-new/memcheck/tests/vcpu_fnfns.stdout.diff-glibc28-amd64
=================================================
--- vcpu_fnfns.stdout.exp-glibc28-amd64 2009-07-28 17:42:14.000000000 -0500
+++ vcpu_fnfns.stdout.out 2009-07-28 17:48:40.000000000 -0500
@@ -91,16 +91,16 @@
ceilD(-1.2000000008000e+00) = -1.0000000000000e+00
ceilD(-1.1000000009000e+00) = -1.0000000000000e+00
ceilD(-1.0000000010000e+00) = -1.0000000000000e+00
- ceilD(-9.0000000110000e-01) = -0.0000000000000e+00
- ceilD(-8.0000000120000e-01) = -0.0000000000000e+00
- ceilD(-7.0000000130000e-01) = -0.0000000000000e+00
- ceilD(-6.0000000140000e-01) = -0.0000000000000e+00
- ceilD(-5.0000000150000e-01) = -0.0000000000000e+00
- ceilD(-4.0000000160000e-01) = -0.0000000000000e+00
- ceilD(-3.0000000170000e-01) = -0.0000000000000e+00
- ceilD(-2.0000000180000e-01) = -0.0000000000000e+00
- ceilD(-1.0000000190000e-01) = -0.0000000000000e+00
- ceilD(-1.9999992495467e-09) = -0.0000000000000e+00
+ ceilD(-9.0000000110000e-01) = +0.0000000000000e+00
+ ceilD(-8.0000000120000e-01) = +0.0000000000000e+00
+ ceilD(-7.0000000130000e-01) = +0.0000000000000e+00
+ ceilD(-6.0000000140000e-01) = +0.0000000000000e+00
+ ceilD(-5.0000000150000e-01) = +0.0000000000000e+00
+ ceilD(-4.0000000160000e-01) = +0.0000000000000e+00
+ ceilD(-3.0000000170000e-01) = +0.0000000000000e+00
+ ceilD(-2.0000000180000e-01) = +0.0000000000000e+00
+ ceilD(-1.0000000190000e-01) = +0.0000000000000e+00
+ ceilD(-1.9999992495467e-09) = +0.0000000000000e+00
ceilD(+9.9999997900001e-02) = +1.0000000000000e+00
ceilD(+1.9999999780000e-01) = +1.0000000000000e+00
ceilD(+2.9999999770000e-01) = +1.0000000000000e+00
@@ -132,16 +132,16 @@
ceilF( -1.2008e+00) = -1.0000e+00
ceilF( -1.1009e+00) = -1.0000e+00
ceilF( -1.0010e+00) = -1.0000e+00
- ceilF( -9.0110e-01) = -0.0000e+00
- ceilF( -8.0120e-01) = -0.0000e+00
- ceilF( -7.0130e-01) = -0.0000e+00
- ceilF( -6.0140e-01) = -0.0000e+00
- ceilF( -5.0150e-01) = -0.0000e+00
- ceilF( -4.0160e-01) = -0.0000e+00
- ceilF( -3.0170e-01) = -0.0000e+00
- ceilF( -2.0180e-01) = -0.0000e+00
- ceilF( -1.0190e-01) = -0.0000e+00
- ceilF( -1.9999e-03) = -0.0000e+00
+ ceilF( -9.0110e-01) = +0.0000e+00
+ ceilF( -8.0120e-01) = +0.0000e+00
+ ceilF( -7.0130e-01) = +0.0000e+00
+ ceilF( -6.0140e-01) = +0.0000e+00
+ ceilF( -5.0150e-01) = +0.0000e+00
+ ceilF( -4.0160e-01) = +0.0000e+00
+ ceilF( -3.0170e-01) = +0.0000e+00
+ ceilF( -2.0180e-01) = +0.0000e+00
+ ceilF( -1.0190e-01) = +0.0000e+00
+ ceilF( -1.9999e-03) = +0.0000e+00
ceilF( +9.7900e-02) = +1.0000e+00
ceilF( +1.9780e-01) = +1.0000e+00
ceilF( +2.9770e-01) = +1.0000e+00
@@ -536,7 +536,7 @@
logD(+9.9999999900000e-02) = -2.3025850939940e+00
logD(+1.9999999980000e-01) = -1.6094379134341e+00
logD(+2.9999999970000e-01) = -1.2039728053259e+00
- logD(+3.9999999960000e-01) = -9.1629073287415e-01
+ logD(+3.9999999960000e-01) = -9.1629073287416e-01
logD(+4.9999999950000e-01) = -6.9314718155995e-01
logD(+5.9999999940000e-01) = -5.1082562476599e-01
logD(+6.9999999930000e-01) = -3.5667494493873e-01
@@ -617,7 +617,7 @@
log10F( +1.8981e+00) = +2.7832e-01
log10F( +1.9980e+00) = +3.0060e-01
asinD(-1.0000000000000e+00) = -1.5707963267949e+00
- asinD(-9.0000000010000e-01) = -1.1197695152281e+00
+ asinD(-9.0000000010000e-01) = -1.1197695152280e+00
asinD(-8.0000000020000e-01) = -9.2729521833495e-01
asinD(-7.0000000030000e-01) = -7.7539749703084e-01
asinD(-6.0000000040000e-01) = -6.4350110929328e-01
=================================================
./valgrind-new/none/tests/async-sigs.stderr.diff
=================================================
--- async-sigs.stderr.exp 2009-07-28 17:42:24.000000000 -0500
+++ async-sigs.stderr.out 2009-07-28 17:49:47.000000000 -0500
@@ -1,8 +1,30 @@
-testing: blocking=0 caught=11 fatal=7... PASSED
+testing: blocking=0 caught=11 fatal=10...
+Process terminating with default action of signal 10 (SIGBUS)
+ Non-existent physical address at address 0x........
+ at 0x........: test (async-sigs.c:94)
+ by 0x........: main (async-sigs.c:129)
+PASSED
testing: blocking=0 caught=11 fatal=1... PASSED
-testing: blocking=0 caught=10 fatal=7... PASSED
-testing: blocking=0 caught=10 fatal=1... PASSED
-testing: blocking=1 caught=11 fatal=7... PASSED
+testing: blocking=0 caught=30 fatal=10...
+Process terminating with default action of signal 10 (SIGBUS)
+ Non-existent physical address at address 0x........
+ at 0x........: test (async-sigs.c:94)
+ by 0x........: main (async-sigs.c:131)
+PASSED
+testing: blocking=0 caught=30 fatal=1... PASSED
+testing: blocking=1 caught=11 fatal=10...
+Process terminating with default action of signal 10 (SIGBUS)
+ Non-existent physical address at address 0x........
+ at 0x........: __sigsuspend (in /...libc...)
+ by 0x........: test (async-sigs.c:95)
+ by 0x........: main (async-sigs.c:133)
+PASSED
testing: blocking=1 caught=11 fatal=1... PASSED
-testing: blocking=1 caught=10 fatal=7... PASSED
-testing: blocking=1 caught=10 fatal=1... PASSED
+testing: blocking=1 caught=30 fatal=10...
+Process terminating with default action of signal 10 (SIGBUS)
+ Non-existent physical address at address 0x........
+ at 0x........: __sigsuspend (in /...libc...)
+ by 0x........: test (async-sigs.c:95)
+ by 0x........: main (async-sigs.c:135)
+PASSED
+testing: blocking=1 caught=30 fatal=1... PASSED
=================================================
./valgrind-new/none/tests/faultstatus.stderr.diff
=================================================
--- faultstatus.stderr.exp 2009-07-28 17:42:25.000000000 -0500
+++ faultstatus.stderr.out 2009-07-28 17:49:51.000000000 -0500
@@ -1,6 +1,6 @@
-Test 1: PASS
-Test 2: PASS
-Test 3: PASS
-Test 4: PASS
+Test 1: FAIL: expected signal 11, not 10
+Test 2: FAIL: expected signal 11, not 10
+Test 3: FAIL: no fault, or handler returned
+Test 4: FAIL: expected si_code==7, not 0
=================================================
./valgrind-new/none/tests/pth_blockedsig.stderr.diff
=================================================
--- pth_blockedsig.stderr.exp 2009-07-28 17:42:24.000000000 -0500
+++ pth_blockedsig.stderr.out 2009-07-28 17:50:46.000000000 -0500
@@ -1,2 +1,4 @@
+UNKNOWN __pthread_sigmask is unsupported. This warning will not be repeated.
+SHOULD NOT BE HERE (SIGUSR1)!!!!
=================================================
./valgrind-old/memcheck/tests/lsframe1.stderr.diff
=================================================
--- lsframe1.stderr.exp 2009-07-28 17:30:55.000000000 -0500
+++ lsframe1.stderr.out 2009-07-28 17:36:08.000000000 -0500
@@ -1,6 +1,13 @@
-lsframe1: start
-lsframe1: done, result is -8388608
+
+Process terminating with default action of signal 11 (SIGSEGV)
+ Access not within mapped region at address 0x........
+ at 0x........: main (lsframe1.c:18)
+ If you believe this happened as a result of a stack
+ overflow in your program's main thread (unlikely but
+ possible), you can try to increase the size of the
+ main thread stack using the --main-stacksize= flag.
+ The main thread stack size used in this run was ....
ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
malloc/free: in use at exit: ... bytes in ... blocks.
=================================================
./valgrind-old/memcheck/tests/lsframe2.stderr.diff
=================================================
--- lsframe2.stderr.exp 2009-07-28 17:30:57.000000000 -0500
+++ lsframe2.stderr.out 2009-07-28 17:36:10.000000000 -0500
@@ -1,6 +1,14 @@
lsframe2: start
-lsframe2: done, result is -272629760
+
+Process terminating with default action of signal 11 (SIGSEGV)
+ Access not within mapped region at address 0x........
+ at 0x........: rec (lsframe2.c:19)
+ If you believe this happened as a result of a stack
+ overflow in your program's main thread (unlikely but
+ possible), you can try to increase the size of the
+ main thread stack using the --main-stacksize= flag.
+ The main thread stack size used in this run was ....
ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
malloc/free: in use at exit: ... bytes in ... blocks.
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2009-07-28 17:30:55.000000000 -0500
+++ origin5-bz2.stderr.out 2009-07-28 17:36:40.000000000 -0500
@@ -11,7 +11,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -19,7 +19,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -27,7 +27,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -38,7 +38,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -49,8 +49,8 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: mainSort (origin5-bz2.c:2854)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2855)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
@@ -60,8 +60,8 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: mainSort (origin5-bz2.c:2858)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2859)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
@@ -71,7 +71,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -82,7 +82,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -93,7 +93,18 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2964)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
+ by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
+ by 0x........: handle_compress (origin5-bz2.c:4753)
+ by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
+ by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
+ by 0x........: main (origin5-bz2.c:6484)
+ Uninitialised value was created by a client request
+ at 0x........: main (origin5-bz2.c:6479)
+
+Use of uninitialised value of size 4
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -104,7 +115,7 @@
Uninitialised value was created by a client request
<truncated beyond 100 lines>
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2009-07-28 17:30:58.000000000 -0500
+++ origin5-bz2.stderr.out 2009-07-28 17:36:40.000000000 -0500
@@ -28,7 +28,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+ at 0x........: mainSort (origin5-bz2.c:2820)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -38,7 +39,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+ at 0x........: mainSort (origin5-bz2.c:2823)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -48,7 +50,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2855)
+ at 0x........: mainSort (origin5-bz2.c:2855)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -58,7 +61,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2859)
+ at 0x........: mainSort (origin5-bz2.c:2859)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -68,7 +72,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+ at 0x........: mainSort (origin5-bz2.c:2963)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -78,7 +83,19 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2964)
+ at 0x........: mainSort (origin5-bz2.c:2964)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
+ by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
+ by 0x........: handle_compress (origin5-bz2.c:4753)
+ by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
+ by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
+ by 0x........: main (origin5-bz2.c:6484)
+ Uninitialised value was created by a client request
+ at 0x........: main (origin5-bz2.c:6479)
+
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2964)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2009-07-28 17:30:55.000000000 -0500
+++ origin5-bz2.stderr.out 2009-07-28 17:36:40.000000000 -0500
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: handle_compress (origin5-bz2.c:4686)
@@ -9,85 +9,102 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2820)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2823)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2854)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2855)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2858)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2859)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2963)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
<truncated beyond 100 lines>
=================================================
./valgrind-old/memcheck/tests/stack_changes.stderr.diff
=================================================
--- stack_changes.stderr.exp 2009-07-28 17:30:55.000000000 -0500
+++ stack_changes.stderr.out 2009-07-28 17:37:23.000000000 -0500
@@ -0,0 +1,7 @@
+Jump to the invalid address stated on the next line
+ at 0x........: ???
+ Address 0x........ is not stack'd, malloc'd or (recently) free'd
+
+Process terminating with default action of signal 11 (SIGSEGV)
+ Bad permissions for mapped region at address 0x........
+ at 0x........: ???
=================================================
./valgrind-old/memcheck/tests/stack_changes.stdout.diff
=================================================
--- stack_changes.stdout.exp 2009-07-28 17:30:56.000000000 -0500
+++ stack_changes.stdout.out 2009-07-28 17:37:22.000000000 -0500
@@ -1,3 +0,0 @@
-hello, world: 0
-hello, world: 1
-hello, world: 2
=================================================
./valgrind-old/memcheck/tests/stack_changes.stdout.diff2
=================================================
--- stack_changes.stdout.exp2 2009-07-28 17:30:55.000000000 -0500
+++ stack_changes.stdout.out 2009-07-28 17:37:22.000000000 -0500
@@ -1 +0,0 @@
-getcontext() doesn't seem to work
=================================================
./valgrind-old/memcheck/tests/varinfo3.stderr.diff
=================================================
--- varinfo3.stderr.exp 2009-07-28 17:30:55.000000000 -0500
+++ varinfo3.stderr.out 2009-07-28 17:37:36.000000000 -0500
@@ -31,7 +31,7 @@
by 0x........: bar (varinfo3.c:42)
by 0x........: foo (varinfo3.c:58)
by 0x........: main (varinfo3.c:66)
- Address 0x........ is 5 bytes inside data symbol "static_local_def.XXXX"
+ Address 0x........ is in the Data segment of ./varinfo3
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo3.c:28)
@@ -46,7 +46,7 @@
by 0x........: bar (varinfo3.c:44)
by 0x........: foo (varinfo3.c:58)
by 0x........: main (varinfo3.c:66)
- Address 0x........ is 7 bytes inside data symbol "static_local_undef.XXXX"
+ Address 0x........ is in the Data segment of ./varinfo3
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo3.c:28)
=================================================
./valgrind-old/memcheck/tests/varinfo5.stderr.diff
=================================================
--- varinfo5.stderr.exp 2009-07-28 17:30:57.000000000 -0500
+++ varinfo5.stderr.out 2009-07-28 17:37:38.000000000 -0500
@@ -119,7 +119,7 @@
by 0x........: varinfo3_main (varinfo5so.c:118)
by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
- Address 0x........ is 5 bytes inside data symbol "static_local_def.XXXX"
+ Address 0x........ is in the Data segment of /Users/coe/src/vg/nightly/valgrind-old/memcheck/tests/varinfo5so.so
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
@@ -138,7 +138,7 @@
by 0x........: varinfo3_main (varinfo5so.c:118)
by 0x........: varinfo5_main (varinfo5so.c:156)
by 0x........: main (varinfo5.c:5)
- Address 0x........ is 7 bytes inside data symbol "static_local_undef.XXXX"
+ Address 0x........ is in the Data segment of /Users/coe/src/vg/nightly/valgrind-old/memcheck/tests/varinfo5so.so
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo5so.c:29)
=================================================
./valgrind-old/memcheck/tests/vcpu_fnfns.stdout.diff
=================================================
--- vcpu_fnfns.stdout.exp 2009-07-28 17:30:55.000000000 -0500
+++ vcpu_fnfns.stdout.out 2009-07-28 17:37:44.000000000 -0500
@@ -91,16 +91,16 @@
ceilD(-1.2000000008000e+00) = -1.0000000000000e+00
ceilD(-1.1000000009000e+00) = -1.0000000000000e+00
ceilD(-1.0000000010000e+00) = -1.0000000000000e+00
- ceilD(-9.0000000110000e-01) = -0.0000000000000e+00
- ceilD(-8.0000000120000e-01) = -0.0000000000000e+00
- ceilD(-7.0000000130000e-01) = -0.0000000000000e+00
- ceilD(-6.0000000140000e-01) = -0.0000000000000e+00
- ceilD(-5.0000000150000e-01) = -0.0000000000000e+00
- ceilD(-4.0000000160000e-01) = -0.0000000000000e+00
- ceilD(-3.0000000170000e-01) = -0.0000000000000e+00
- ceilD(-2.0000000180000e-01) = -0.0000000000000e+00
- ceilD(-1.0000000190000e-01) = -0.0000000000000e+00
- ceilD(-1.9999992495467e-09) = -0.0000000000000e+00
+ ceilD(-9.0000000110000e-01) = +0.0000000000000e+00
+ ceilD(-8.0000000120000e-01) = +0.0000000000000e+00
+ ceilD(-7.0000000130000e-01) = +0.0000000000000e+00
+ ceilD(-6.0000000140000e-01) = +0.0000000000000e+00
+ ceilD(-5.0000000150000e-01) = +0.0000000000000e+00
+ ceilD(-4.0000000160000e-01) = +0.0000000000000e+00
+ ceilD(-3.0000000170000e-01) = +0.0000000000000e+00
+ ceilD(-2.0000000180000e-01) = +0.0000000000000e+00
+ ceilD(-1.0000000190000e-01) = +0.0000000000000e+00
+ ceilD(-1.9999992495467e-09) = +0.0000000000000e+00
ceilD(+9.9999997900001e-02) = +1.0000000000000e+00
ceilD(+1.9999999780000e-01) = +1.0000000000000e+00
ceilD(+2.9999999770000e-01) = +1.0000000000000e+00
@@ -132,16 +132,16 @@
ceilF( -1.2008e+00) = -1.0000e+00
ceilF( -1.1009e+00) = -1.0000e+00
ceilF( -1.0010e+00) = -1.0000e+00
- ceilF( -9.0110e-01) = -0.0000e+00
- ceilF( -8.0120e-01) = -0.0000e+00
- ceilF( -7.0130e-01) = -0.0000e+00
- ceilF( -6.0140e-01) = -0.0000e+00
- ceilF( -5.0150e-01) = -0.0000e+00
- ceilF( -4.0160e-01) = -0.0000e+00
- ceilF( -3.0170e-01) = -0.0000e+00
- ceilF( -2.0180e-01) = -0.0000e+00
- ceilF( -1.0190e-01) = -0.0000e+00
- ceilF( -1.9999e-03) = -0.0000e+00
+ ceilF( -9.0110e-01) = +0.0000e+00
+ ceilF( -8.0120e-01) = +0.0000e+00
+ ceilF( -7.0130e-01) = +0.0000e+00
+ ceilF( -6.0140e-01) = +0.0000e+00
+ ceilF( -5.0150e-01) = +0.0000e+00
+ ceilF( -4.0160e-01) = +0.0000e+00
+ ceilF( -3.0170e-01) = +0.0000e+00
+ ceilF( -2.0180e-01) = +0.0000e+00
+ ceilF( -1.0190e-01) = +0.0000e+00
+ ceilF( -1.9999e-03) = +0.0000e+00
ceilF( +9.7900e-02) = +1.0000e+00
ceilF( +1.9780e-01) = +1.0000e+00
ceilF( +2.9770e-01) = +1.0000e+00
@@ -305,7 +305,7 @@
cosF( -3.0170e-01) = +9.5483e-01
cosF( -2.0180e-01) = +9.7971e-01
cosF( -1.0190e-01) = +9.9481e-01
- cosF( -1.9999e-03) = +1.0000e-00
+ cosF( -1.9999e-03) = +1.0000e+00
cosF( +9.7900e-02) = +9.9521e-01
cosF( +1.9780e-01) = +9.8050e-01
cosF( +2.9770e-01) = +9.5601e-01
@@ -536,7 +536,7 @@
logD(+9.9999999900000e-02) = -2.3025850939940e+00
logD(+1.9999999980000e-01) = -1.6094379134341e+00
logD(+2.9999999970000e-01) = -1.2039728053259e+00
- logD(+3.9999999960000e-01) = -9.1629073287415e-01
+ logD(+3.9999999960000e-01) = -9.1629073287416e-01
logD(+4.9999999950000e-01) = -6.9314718155995e-01
logD(+5.9999999940000e-01) = -5.1082562476599e-01
logD(+6.9999999930000e-01) = -3.5667494493873e-01
@@ -617,7 +617,7 @@
log10F( +1.8981e+00) = +2.7832e-01
log10F( +1.9980e+00) = +3.0060e-01
asinD(-1.0000000000000e+00) = -1.5707963267949e+00
- asinD(-9.0000000010000e-01) = -1.1197695152281e+00
+ asinD(-9.0000000010000e-01) = -1.1197695152280e+00
asinD(-8.0000000020000e-01) = -9.2729521833495e-01
asinD(-7.0000000030000e-01) = -7.7539749703084e-01
asinD(-6.0000000040000e-01) = -6.4350110929328e-01
=================================================
./valgrind-old/memcheck/tests/vcpu_fnfns.stdout.diff-glibc28-amd64
=================================================
--- vcpu_fnfns.stdout.exp-glibc28-amd64 2009-07-28 17:30:56.000000000 -0500
+++ vcpu_fnfns.stdout.out 2009-07-28 17:37:44.000000000 -0500
@@ -91,16 +91,16 @@
ceilD(-1.2000000008000e+00) = -1.0000000000000e+00
ceilD(-1.1000000009000e+00) = -1.0000000000000e+00
ceilD(-1.0000000010000e+00) = -1.0000000000000e+00
- ceilD(-9.0000000110000e-01) = -0.0000000000000e+00
- ceilD(-8.0000000120000e-01) = -0.0000000000000e+00
- ceilD(-7.0000000130000e-01) = -0.0000000000000e+00
- ceilD(-6.0000000140000e-01) = -0.0000000000000e+00
- ceilD(-5.0000000150000e-01) = -0.0000000000000e+00
- ceilD(-4.0000000160000e-01) = -0.0000000000000e+00
- ceilD(-3.0000000170000e-01) = -0.0000000000000e+00
- ceilD(-2.0000000180000e-01) = -0.0000000000000e+00
- ceilD(-1.0000000190000e-01) = -0.0000000000000e+00
- ceilD(-1.9999992495467e-09) = -0.0000000000000e+00
+ ceilD(-9.0000000110000e-01) = +0.0000000000000e+00
+ ceilD(-8.0000000120000e-01) = +0.0000000000000e+00
+ ceilD(-7.0000000130000e-01) = +0.0000000000000e+00
+ ceilD(-6.0000000140000e-01) = +0.0000000000000e+00
+ ceilD(-5.0000000150000e-01) = +0.0000000000000e+00
+ ceilD(-4.0000000160000e-01) = +0.0000000000000e+00
+ ceilD(-3.0000000170000e-01) = +0.0000000000000e+00
+ ceilD(-2.0000000180000e-01) = +0.0000000000000e+00
+ ceilD(-1.0000000190000e-01) = +0.0000000000000e+00
+ ceilD(-1.9999992495467e-09) = +0.0000000000000e+00
ceilD(+9.9999997900001e-02) = +1.0000000000000e+00
ceilD(+1.9999999780000e-01) = +1.0000000000000e+00
ceilD(+2.9999999770000e-01) = +1.0000000000000e+00
@@ -132,16 +132,16 @@
ceilF( -1.2008e+00) = -1.0000e+00
ceilF( -1.1009e+00) = -1.0000e+00
ceilF( -1.0010e+00) = -1.0000e+00
- ceilF( -9.0110e-01) = -0.0000e+00
- ceilF( -8.0120e-01) = -0.0000e+00
- ceilF( -7.0130e-01) = -0.0000e+00
- ceilF( -6.0140e-01) = -0.0000e+00
- ceilF( -5.0150e-01) = -0.0000e+00
- ceilF( -4.0160e-01) = -0.0000e+00
- ceilF( -3.0170e-01) = -0.0000e+00
- ceilF( -2.0180e-01) = -0.0000e+00
- ceilF( -1.0190e-01) = -0.0000e+00
- ceilF( -1.9999e-03) = -0.0000e+00
+ ceilF( -9.0110e-01) = +0.0000e+00
+ ceilF( -8.0120e-01) = +0.0000e+00
+ ceilF( -7.0130e-01) = +0.0000e+00
+ ceilF( -6.0140e-01) = +0.0000e+00
+ ceilF( -5.0150e-01) = +0.0000e+00
+ ceilF( -4.0160e-01) = +0.0000e+00
+ ceilF( -3.0170e-01) = +0.0000e+00
+ ceilF( -2.0180e-01) = +0.0000e+00
+ ceilF( -1.0190e-01) = +0.0000e+00
+ ceilF( -1.9999e-03) = +0.0000e+00
ceilF( +9.7900e-02) = +1.0000e+00
ceilF( +1.9780e-01) = +1.0000e+00
ceilF( +2.9770e-01) = +1.0000e+00
@@ -536,7 +536,7 @@
logD(+9.9999999900000e-02) = -2.3025850939940e+00
logD(+1.9999999980000e-01) = -1.6094379134341e+00
logD(+2.9999999970000e-01) = -1.2039728053259e+00
- logD(+3.9999999960000e-01) = -9.1629073287415e-01
+ logD(+3.9999999960000e-01) = -9.1629073287416e-01
logD(+4.9999999950000e-01) = -6.9314718155995e-01
logD(+5.9999999940000e-01) = -5.1082562476599e-01
logD(+6.9999999930000e-01) = -3.5667494493873e-01
@@ -617,7 +617,7 @@
log10F( +1.8981e+00) = +2.7832e-01
log10F( +1.9980e+00) = +3.0060e-01
asinD(-1.0000000000000e+00) = -1.5707963267949e+00
- asinD(-9.0000000010000e-01) = -1.1197695152281e+00
+ asinD(-9.0000000010000e-01) = -1.1197695152280e+00
asinD(-8.0000000020000e-01) = -9.2729521833495e-01
asinD(-7.0000000030000e-01) = -7.7539749703084e-01
asinD(-6.0000000040000e-01) = -6.4350110929328e-01
=================================================
./valgrind-old/none/tests/async-sigs.stderr.diff
=================================================
--- async-sigs.stderr.exp 2009-07-28 17:31:09.000000000 -0500
+++ async-sigs.stderr.out 2009-07-28 17:38:52.000000000 -0500
@@ -1,8 +1,30 @@
-testing: blocking=0 caught=11 fatal=7... PASSED
+testing: blocking=0 caught=11 fatal=10...
+Process terminating with default action of signal 10 (SIGBUS)
+ Non-existent physical address at address 0x........
+ at 0x........: test (async-sigs.c:94)
+ by 0x........: main (async-sigs.c:129)
+PASSED
testing: blocking=0 caught=11 fatal=1... PASSED
-testing: blocking=0 caught=10 fatal=7... PASSED
-testing: blocking=0 caught=10 fatal=1... PASSED
-testing: blocking=1 caught=11 fatal=7... PASSED
+testing: blocking=0 caught=30 fatal=10...
+Process terminating with default action of signal 10 (SIGBUS)
+ Non-existent physical address at address 0x........
+ at 0x........: test (async-sigs.c:94)
+ by 0x........: main (async-sigs.c:131)
+PASSED
+testing: blocking=0 caught=30 fatal=1... PASSED
+testing: blocking=1 caught=11 fatal=10...
+Process terminating with default action of signal 10 (SIGBUS)
+ Non-existent physical address at address 0x........
+ at 0x........: __sigsuspend (in /...libc...)
+ by 0x........: test (async-sigs.c:95)
+ by 0x........: main (async-sigs.c:133)
+PASSED
testing: blocking=1 caught=11 fatal=1... PASSED
-testing: blocking=1 caught=10 fatal=7... PASSED
-testing: blocking=1 caught=10 fatal=1... PASSED
+testing: blocking=1 caught=30 fatal=10...
+Process terminating with default action of signal 10 (SIGBUS)
+ Non-existent physical address at address 0x........
+ at 0x........: __sigsuspend (in /...libc...)
+ by 0x........: test (async-sigs.c:95)
+ by 0x........: main (async-sigs.c:135)
+PASSED
+testing: blocking=1 caught=30 fatal=1... PASSED
=================================================
./valgrind-old/none/tests/faultstatus.stderr.diff
=================================================
--- faultstatus.stderr.exp 2009-07-28 17:31:11.000000000 -0500
+++ faultstatus.stderr.out 2009-07-28 17:38:57.000000000 -0500
@@ -1,6 +1,6 @@
-Test 1: PASS
-Test 2: PASS
-Test 3: PASS
-Test 4: PASS
+Test 1: FAIL: expected signal 11, not 10
+Test 2: FAIL: expected signal 11, not 10
+Test 3: FAIL: no fault, or handler returned
+Test 4: FAIL: expected si_code==7, not 0
=================================================
./valgrind-old/none/tests/pth_blockedsig.stderr.diff
=================================================
--- pth_blockedsig.stderr.exp 2009-07-28 17:31:09.000000000 -0500
+++ pth_blockedsig.stderr.out 2009-07-28 17:39:55.000000000 -0500
@@ -1,2 +1,4 @@
+UNKNOWN __pthread_sigmask is unsupported. This warning will not be repeated.
+SHOULD NOT BE HERE (SIGUSR1)!!!!
|
|
From: Nicholas N. <n.n...@gm...> - 2009-07-29 16:30:41
|
Nightly build on ocean ( Ubuntu 9.04, x86_64 )
Started at 2009-07-30 02:00:01 EST
Ended at 2009-07-30 02:30:24 EST
Results differ from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 525 tests, 2 stderr failures, 0 stdout failures, 0 post failures ==
none/tests/async-sigs (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
=================================================
== Results from 24 hours ago ==
=================================================
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 525 tests, 2 stderr failures, 1 stdout failure, 0 post failures ==
none/tests/stackgrowth (stdout)
none/tests/stackgrowth (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
=================================================
== Difference between 24 hours ago and now ==
=================================================
*** old.short Thu Jul 30 02:13:39 2009
--- new.short Thu Jul 30 02:30:24 2009
***************
*** 8,12 ****
! == 525 tests, 2 stderr failures, 1 stdout failure, 0 post failures ==
! none/tests/stackgrowth (stdout)
! none/tests/stackgrowth (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
--- 8,11 ----
! == 525 tests, 2 stderr failures, 0 stdout failures, 0 post failures ==
! none/tests/async-sigs (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
=================================================
./valgrind-new/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2009-07-30 02:14:17.000000000 +1000
+++ tc06_two_races_xml.stderr.out 2009-07-30 02:28:00.000000000 +1000
@@ -43,11 +43,6 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>do_clone</fn>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
<fn>pthread_create@@GLIBC_2.2.5</fn>
</frame>
<frame>
=================================================
./valgrind-new/none/tests/async-sigs.stderr.diff
=================================================
--- async-sigs.stderr.exp 2009-07-30 02:16:49.000000000 +1000
+++ async-sigs.stderr.out 2009-07-30 02:26:53.000000000 +1000
@@ -1,4 +1,32 @@
-testing: blocking=0 caught=11 fatal=7... PASSED
+testing: blocking=0 caught=11 fatal=7...
+valgrind: m_scheduler/scheduler.c:1199 (vgPlain_scheduler): the 'impossible' happened.
+valgrind: VG_(scheduler), phase 3: run_innerloop detected host state invariant failure
+ at 0x........: report_and_quit (m_libcassert.c:145)
+ by 0x........: vgPlain_assert_fail (m_libcassert.c:217)
+ by 0x........: vgPlain_scheduler (scheduler.c:1224)
+ by 0x........: run_a_thread_NORETURN (syswrap-linux.c:91)
+
+sched status:
+ running_tid=1
+
+Thread 1: status = VgTs_Runnable
+ at 0x........: test (async-sigs.c:94)
+ by 0x........: main (async-sigs.c:129)
+
+
+Note: see also the FAQ in the source distribution.
+It contains workarounds to several common problems.
+In particular, if Valgrind aborted or crashed after
+identifying problems in your program, there's a good chance
+that fixing those problems will prevent Valgrind aborting or
+crashing, especially if it happened in m_mallocfree.c.
+
+If that doesn't help, please report this bug to: www.valgrind.org
+
+In the bug report, send all the above text, the valgrind
+version, and what OS and version you are using. Thanks.
+
+FAILED: child exited with unexpected status exit 1
testing: blocking=0 caught=11 fatal=1... PASSED
testing: blocking=0 caught=10 fatal=7... PASSED
testing: blocking=0 caught=10 fatal=1... PASSED
=================================================
./valgrind-old/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2009-07-30 02:00:25.000000000 +1000
+++ tc06_two_races_xml.stderr.out 2009-07-30 02:11:12.000000000 +1000
@@ -43,11 +43,6 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>do_clone</fn>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
<fn>pthread_create@@GLIBC_2.2.5</fn>
</frame>
<frame>
=================================================
./valgrind-old/none/tests/stackgrowth.stderr.diff
=================================================
--- stackgrowth.stderr.exp 2009-07-30 02:01:21.000000000 +1000
+++ stackgrowth.stderr.out 2009-07-30 02:10:25.000000000 +1000
@@ -1,2 +1,127 @@
+valgrind: m_scheduler/scheduler.c:1199 (vgPlain_scheduler): the 'impossible' happened.
+valgrind: VG_(scheduler), phase 3: run_innerloop detected host state invariant failure
+ at 0x........: report_and_quit (m_libcassert.c:145)
+ by 0x........: vgPlain_assert_fail (m_libcassert.c:217)
+ by 0x........: vgPlain_scheduler (scheduler.c:1224)
+ by 0x........: run_a_thread_NORETURN (syswrap-linux.c:91)
+
+sched status:
+ running_tid=1
+
+Thread 1: status = VgTs_Runnable
+ at 0x........: test (stackgrowth.c:15)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
+ by 0x........: test (stackgrowth.c:14)
<truncated beyond 100 lines>
=================================================
./valgrind-old/none/tests/stackgrowth.stdout.diff
=================================================
--- stackgrowth.stdout.exp 2009-07-30 02:01:21.000000000 +1000
+++ stackgrowth.stdout.out 2009-07-30 02:10:25.000000000 +1000
@@ -1 +0,0 @@
-PASSED
|
|
From: Tom H. <to...@co...> - 2009-07-29 11:14:33
|
On 29/07/09 11:57, sv...@va... wrote: > +# Like Tom says, the stack unwinder protection is bollocks. > +# We should junk all previous schemes and simply get the > +# stack unwinder to consult aspacem at each frame (cache-accelerated, > +# of course) to check each page it visits is accessible. I have a patch to do that ;-) I've attached it - it doesn't do any caching at the moment though. Of course we should also try and unify the two different stack tracking schemes and generally try and do a better job of knowing where the stack for each thread is. Tom -- Tom Hughes (to...@co...) http://www.compton.nu/ |
|
From: <sv...@va...> - 2009-07-29 11:09:12
|
Author: tom
Date: 2009-07-29 12:09:01 +0100 (Wed, 29 Jul 2009)
New Revision: 10656
Log:
Improve futex system call support. Patch from BZ#201757 which I have
attempted to cross check against current kernel code. Reading the
futex system call code mostly just made my head hurt however...
Modified:
trunk/coregrind/m_syswrap/syswrap-linux.c
trunk/include/vki/vki-linux.h
Modified: trunk/coregrind/m_syswrap/syswrap-linux.c
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-linux.c 2009-07-29 10:57:09 UTC (rev 10655)
+++ trunk/coregrind/m_syswrap/syswrap-linux.c 2009-07-29 11:09:01 UTC (rev 10656)
@@ -865,31 +865,43 @@
ARG6 - int val3 CMP_REQUEUE
*/
PRINT("sys_futex ( %#lx, %ld, %ld, %#lx, %#lx )", ARG1,ARG2,ARG3,ARG4,ARG5);
- switch(ARG2) {
+ switch(ARG2 & ~(VKI_FUTEX_PRIVATE_FLAG|VKI_FUTEX_CLOCK_REALTIME)) {
case VKI_FUTEX_CMP_REQUEUE:
- case VKI_FUTEX_CMP_REQUEUE | VKI_FUTEX_PRIVATE_FLAG:
+ case VKI_FUTEX_WAKE_OP:
+ case VKI_FUTEX_CMP_REQUEUE_PI:
PRE_REG_READ6(long, "futex",
vki_u32 *, futex, int, op, int, val,
struct timespec *, utime, vki_u32 *, uaddr2, int, val3);
break;
case VKI_FUTEX_REQUEUE:
- case VKI_FUTEX_REQUEUE | VKI_FUTEX_PRIVATE_FLAG:
+ case VKI_FUTEX_WAIT_REQUEUE_PI:
PRE_REG_READ5(long, "futex",
vki_u32 *, futex, int, op, int, val,
struct timespec *, utime, vki_u32 *, uaddr2);
break;
+ case VKI_FUTEX_WAIT_BITSET:
+ PRE_REG_READ6(long, "futex",
+ vki_u32 *, futex, int, op, int, val,
+ struct timespec *, utime, int, dummy, int, val3);
+ break;
+ case VKI_FUTEX_WAKE_BITSET:
+ PRE_REG_READ6(long, "futex",
+ vki_u32 *, futex, int, op, int, val,
+ int, dummy, int, dummy2, int, val3);
+ break;
case VKI_FUTEX_WAIT:
- case VKI_FUTEX_WAIT | VKI_FUTEX_PRIVATE_FLAG:
+ case VKI_FUTEX_LOCK_PI:
PRE_REG_READ4(long, "futex",
vki_u32 *, futex, int, op, int, val,
struct timespec *, utime);
break;
case VKI_FUTEX_WAKE:
- case VKI_FUTEX_WAKE | VKI_FUTEX_PRIVATE_FLAG:
case VKI_FUTEX_FD:
+ case VKI_FUTEX_TRYLOCK_PI:
PRE_REG_READ3(long, "futex",
vki_u32 *, futex, int, op, int, val);
break;
+ case VKI_FUTEX_UNLOCK_PI:
default:
PRE_REG_READ2(long, "futex", vki_u32 *, futex, int, op);
break;
@@ -899,23 +911,27 @@
*flags |= SfMayBlock;
- switch(ARG2) {
+ switch(ARG2 & ~(VKI_FUTEX_PRIVATE_FLAG|VKI_FUTEX_CLOCK_REALTIME)) {
case VKI_FUTEX_WAIT:
- case VKI_FUTEX_WAIT | VKI_FUTEX_PRIVATE_FLAG:
+ case VKI_FUTEX_LOCK_PI:
+ case VKI_FUTEX_WAIT_BITSET:
+ case VKI_FUTEX_WAIT_REQUEUE_PI:
if (ARG4 != 0)
PRE_MEM_READ( "futex(timeout)", ARG4, sizeof(struct vki_timespec) );
break;
case VKI_FUTEX_REQUEUE:
- case VKI_FUTEX_REQUEUE | VKI_FUTEX_PRIVATE_FLAG:
case VKI_FUTEX_CMP_REQUEUE:
- case VKI_FUTEX_CMP_REQUEUE | VKI_FUTEX_PRIVATE_FLAG:
+ case VKI_FUTEX_CMP_REQUEUE_PI:
+ case VKI_FUTEX_WAKE_OP:
PRE_MEM_READ( "futex(futex2)", ARG5, sizeof(Int) );
break;
case VKI_FUTEX_WAKE:
- case VKI_FUTEX_WAKE | VKI_FUTEX_PRIVATE_FLAG:
case VKI_FUTEX_FD:
+ case VKI_FUTEX_WAKE_BITSET:
+ case VKI_FUTEX_TRYLOCK_PI:
+ case VKI_FUTEX_UNLOCK_PI:
/* no additional pointers */
break;
Modified: trunk/include/vki/vki-linux.h
===================================================================
--- trunk/include/vki/vki-linux.h 2009-07-29 10:57:09 UTC (rev 10655)
+++ trunk/include/vki/vki-linux.h 2009-07-29 11:09:01 UTC (rev 10656)
@@ -1150,7 +1150,7 @@
#define VKI_MREMAP_FIXED 2
//----------------------------------------------------------------------
-// From linux-2.6.10-rc3-mm1/include/linux/futex.h
+// From linux-2.6.31-rc4/include/linux/futex.h
//----------------------------------------------------------------------
#define VKI_FUTEX_WAIT (0)
@@ -1158,7 +1158,16 @@
#define VKI_FUTEX_FD (2)
#define VKI_FUTEX_REQUEUE (3)
#define VKI_FUTEX_CMP_REQUEUE (4)
+#define VKI_FUTEX_WAKE_OP (5)
+#define VKI_FUTEX_LOCK_PI (6)
+#define VKI_FUTEX_UNLOCK_PI (7)
+#define VKI_FUTEX_TRYLOCK_PI (8)
+#define VKI_FUTEX_WAIT_BITSET (9)
+#define VKI_FUTEX_WAKE_BITSET (10)
+#define VKI_FUTEX_WAIT_REQUEUE_PI (11)
+#define VKI_FUTEX_CMP_REQUEUE_PI (12)
#define VKI_FUTEX_PRIVATE_FLAG (128)
+#define VKI_FUTEX_CLOCK_REALTIME (256)
struct vki_robust_list {
struct vki_robust_list __user *next;
|
|
From: <sv...@va...> - 2009-07-29 10:57:21
|
Author: sewardj
Date: 2009-07-29 11:57:09 +0100 (Wed, 29 Jul 2009)
New Revision: 10655
Log:
Note results of investigation into segfaulting of tc22 on H on MacOS.
Modified:
trunk/helgrind/tests/Makefile.am
Modified: trunk/helgrind/tests/Makefile.am
===================================================================
--- trunk/helgrind/tests/Makefile.am 2009-07-29 07:00:01 UTC (rev 10654)
+++ trunk/helgrind/tests/Makefile.am 2009-07-29 10:57:09 UTC (rev 10655)
@@ -99,6 +99,23 @@
tc24_nonzero_sem
# DDD: it seg faults, and then the Valgrind exit path hangs
+# JRS 29 July 09: it craps out in the stack unwinder, in
+#==13480== at 0xF00B81FF: ??? f00b8180 VG_(get_StackTrace_wrk)
+#==13480== by 0xF00B83F8: ??? f00b8340 VG_(get_StackTrace)
+#==13480== by 0xF009FE19: ??? f009fd70 record_ExeContext_wrk
+#==13480== by 0xF009D92E: ??? f009d8c0 construct_error
+#==13480== by 0xF009F001: ??? f009eef0 VG_(maybe_record_error)
+#==13480== by 0xF0081F80: ??? f0081f00 HG_(record_error_misc)
+#==13480== by 0xF0089C00: ??? f0089b80 evh__pre_thread_ll_exit
+#==13480== by 0xF01111D1: ??? f0111070 run_a_thread_NORETURN
+#==13480== by 0xF0111512: ??? f0111500 start_thread_NORETURN
+# when the thread being unwound is at __bsdthread_terminate+0
+#
+# Like Tom says, the stack unwinder protection is bollocks.
+# We should junk all previous schemes and simply get the
+# stack unwinder to consult aspacem at each frame (cache-accelerated,
+# of course) to check each page it visits is accessible.
+#
if ! VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
check_PROGRAMS += \
tc22_exit_w_lock
|
|
From: Bart V. A. <bar...@gm...> - 2009-07-29 07:42:01
|
Nightly build on georgia-tech-cellbuzz-native ( cellbuzz, ppc64, Fedora 7, native ) Started at 2009-07-29 02:15:56 EDT Ended at 2009-07-29 03:41:44 EDT Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 436 tests, 44 stderr failures, 9 stdout failures, 0 post failures == memcheck/tests/deep_templates (stdout) memcheck/tests/leak-cases-full (stderr) memcheck/tests/leak-cases-summary (stderr) memcheck/tests/leak-cycle (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/varinfo1 (stderr) memcheck/tests/varinfo2 (stderr) memcheck/tests/varinfo3 (stderr) memcheck/tests/varinfo4 (stderr) memcheck/tests/varinfo5 (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/wrap8 (stderr) none/tests/empty-exe (stderr) none/tests/linux/mremap (stderr) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/jm-vmx (stdout) none/tests/ppc32/round (stdout) none/tests/ppc32/test_gx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/jm-vmx (stdout) none/tests/ppc64/round (stdout) none/tests/shell (stdout) none/tests/shell (stderr) none/tests/shell_valid1 (stderr) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) none/tests/shell_zerolength (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc22_exit_w_lock (stderr) helgrind/tests/tc23_bogus_condwait (stderr) exp-ptrcheck/tests/bad_percentify (stderr) exp-ptrcheck/tests/base (stderr) exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/fp (stderr) exp-ptrcheck/tests/globalerr (stderr) exp-ptrcheck/tests/hackedbz2 (stderr) exp-ptrcheck/tests/hp_bounds (stderr) exp-ptrcheck/tests/hp_dangle (stderr) exp-ptrcheck/tests/hsg (stderr) exp-ptrcheck/tests/justify (stderr) exp-ptrcheck/tests/partial_bad (stderr) exp-ptrcheck/tests/partial_good (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) exp-ptrcheck/tests/realloc (stderr) exp-ptrcheck/tests/stackerr (stderr) exp-ptrcheck/tests/strcpy (stderr) exp-ptrcheck/tests/supp (stderr) exp-ptrcheck/tests/tricky (stderr) exp-ptrcheck/tests/unaligned (stderr) exp-ptrcheck/tests/zero (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Last 20 lines of verbose log follow echo inline: valgrind -q ./inline leak-0: valgrind -q ./leak-0 leak-cases-full: valgrind -q --leak-check=full --leak-resolution=high ./leak-cases *** leak-cases-full failed (stderr) *** leak-cases-summary: valgrind -q --leak-check=summary --leak-resolution=high ./leak-cases *** leak-cases-summary failed (stderr) *** leak-cycle: valgrind -q --leak-check=yes --leak-resolution=high ./leak-cycle *** leak-cycle failed (stderr) *** leak-pool-0: valgrind ./leak-pool 0 leak-pool-1: valgrind ./leak-pool 1 leak-pool-2: valgrind ./leak-pool 2 leak-pool-3: valgrind ./leak-pool 3 leak-pool-4: valgrind ./leak-pool 4 leak-pool-5: valgrind ./leak-pool 5 leak-tree: valgrind -q --leak-check=full --leak-resolution=high ./leak-tree -- Running tests in memcheck/tests/linux ------------------------------ brk: valgrind ./brk capget: valgrind ./capget vg_regtest: `./filter_allocs' not found or not a file (.) make: *** [regtest] Error 2 ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Wed Jul 29 02:52:18 2009 --- new.short Wed Jul 29 03:41:44 2009 *************** *** 6,27 **** ! Last 20 lines of verbose log follow echo ! inline: valgrind -q ./inline ! leak-0: valgrind -q ./leak-0 ! leak-cases-full: valgrind -q --leak-check=full --leak-resolution=high ./leak-cases ! *** leak-cases-full failed (stderr) *** ! leak-cases-summary: valgrind -q --leak-check=summary --leak-resolution=high ./leak-cases ! *** leak-cases-summary failed (stderr) *** ! leak-cycle: valgrind -q --leak-check=yes --leak-resolution=high ./leak-cycle ! *** leak-cycle failed (stderr) *** ! leak-pool-0: valgrind ./leak-pool 0 ! leak-pool-1: valgrind ./leak-pool 1 ! leak-pool-2: valgrind ./leak-pool 2 ! leak-pool-3: valgrind ./leak-pool 3 ! leak-pool-4: valgrind ./leak-pool 4 ! leak-pool-5: valgrind ./leak-pool 5 ! leak-tree: valgrind -q --leak-check=full --leak-resolution=high ./leak-tree ! -- Running tests in memcheck/tests/linux ------------------------------ ! brk: valgrind ./brk ! capget: valgrind ./capget ! vg_regtest: `./filter_allocs' not found or not a file (.) ! make: *** [regtest] Error 2 --- 6,63 ---- ! Regression test results follow ! ! == 436 tests, 44 stderr failures, 9 stdout failures, 0 post failures == ! memcheck/tests/deep_templates (stdout) ! memcheck/tests/leak-cases-full (stderr) ! memcheck/tests/leak-cases-summary (stderr) ! memcheck/tests/leak-cycle (stderr) ! memcheck/tests/origin5-bz2 (stderr) ! memcheck/tests/varinfo1 (stderr) ! memcheck/tests/varinfo2 (stderr) ! memcheck/tests/varinfo3 (stderr) ! memcheck/tests/varinfo4 (stderr) ! memcheck/tests/varinfo5 (stderr) ! memcheck/tests/varinfo6 (stderr) ! memcheck/tests/wrap8 (stderr) ! none/tests/empty-exe (stderr) ! none/tests/linux/mremap (stderr) ! none/tests/ppc32/jm-fp (stdout) ! none/tests/ppc32/jm-vmx (stdout) ! none/tests/ppc32/round (stdout) ! none/tests/ppc32/test_gx (stdout) ! none/tests/ppc64/jm-fp (stdout) ! none/tests/ppc64/jm-vmx (stdout) ! none/tests/ppc64/round (stdout) ! none/tests/shell (stdout) ! none/tests/shell (stderr) ! none/tests/shell_valid1 (stderr) ! none/tests/shell_valid2 (stderr) ! none/tests/shell_valid3 (stderr) ! none/tests/shell_zerolength (stderr) ! helgrind/tests/hg05_race2 (stderr) ! helgrind/tests/tc06_two_races_xml (stderr) ! helgrind/tests/tc22_exit_w_lock (stderr) ! helgrind/tests/tc23_bogus_condwait (stderr) ! exp-ptrcheck/tests/bad_percentify (stderr) ! exp-ptrcheck/tests/base (stderr) ! exp-ptrcheck/tests/ccc (stderr) ! exp-ptrcheck/tests/fp (stderr) ! exp-ptrcheck/tests/globalerr (stderr) ! exp-ptrcheck/tests/hackedbz2 (stderr) ! exp-ptrcheck/tests/hp_bounds (stderr) ! exp-ptrcheck/tests/hp_dangle (stderr) ! exp-ptrcheck/tests/hsg (stderr) ! exp-ptrcheck/tests/justify (stderr) ! exp-ptrcheck/tests/partial_bad (stderr) ! exp-ptrcheck/tests/partial_good (stderr) ! exp-ptrcheck/tests/preen_invars (stderr) ! exp-ptrcheck/tests/pth_create (stderr) ! exp-ptrcheck/tests/pth_specific (stderr) ! exp-ptrcheck/tests/realloc (stderr) ! exp-ptrcheck/tests/stackerr (stderr) ! exp-ptrcheck/tests/strcpy (stderr) ! exp-ptrcheck/tests/supp (stderr) ! exp-ptrcheck/tests/tricky (stderr) ! exp-ptrcheck/tests/unaligned (stderr) ! exp-ptrcheck/tests/zero (stderr) ! |
|
From: <sv...@va...> - 2009-07-29 07:00:14
|
Author: sewardj
Date: 2009-07-29 08:00:01 +0100 (Wed, 29 Jul 2009)
New Revision: 10654
Log:
Add a suppression apparently required by Darwin 9.7.0, 32-bit.
Modified:
trunk/darwin9.supp
Modified: trunk/darwin9.supp
===================================================================
--- trunk/darwin9.supp 2009-07-29 03:34:56 UTC (rev 10653)
+++ trunk/darwin9.supp 2009-07-29 07:00:01 UTC (rev 10654)
@@ -97,8 +97,17 @@
fun:main
}
+# afaict this is legit. Might be caused by setenv("VAR=")
+# where the value string is empty (not sure)
{
- futimes-1
+ macos-Cond-7
+ Memcheck:Cond
+ fun:__setenv
+ fun:putenv
+}
+
+{
+ macos-futimes-1
Memcheck:Param
futimes(tvp[1])
fun:futimes
@@ -156,14 +165,14 @@
# See https://bugs.kde.org/show_bug.cgi?id=188572 about this; it's
# unavoidable due to BSD setenv() semantics.
{
- <insert a suppression name here>
+ macos-__setenv-leak-see-our-bug-188572
Memcheck:Leak
fun:malloc_zone_malloc
fun:__setenv
fun:setenv$UNIX2003
}
{
- localeconv-leak
+ macos-localeconv-leak
Memcheck:Leak
fun:malloc
fun:localeconv_l
|
|
From: <sv...@va...> - 2009-07-29 03:35:16
|
Author: njn
Date: 2009-07-29 04:34:56 +0100 (Wed, 29 Jul 2009)
New Revision: 10653
Log:
Don't include "how to write a tool" in the user manual -- it's in the tech
docs, and the chapter/section numbering doesn't match the rest of the
numbering in the user manual.
Also change some of the names of the links in that file to match the
filename.
Modified:
trunk/docs/xml/manual-writing-tools.xml
trunk/docs/xml/manual.xml
Modified: trunk/docs/xml/manual-writing-tools.xml
===================================================================
--- trunk/docs/xml/manual-writing-tools.xml 2009-07-29 02:36:21 UTC (rev 10652)
+++ trunk/docs/xml/manual-writing-tools.xml 2009-07-29 03:34:56 UTC (rev 10653)
@@ -4,17 +4,14 @@
[ <!ENTITY % vg-entities SYSTEM "vg-entities.xml"> %vg-entities; ]>
-<chapter id="writing-tools" xreflabel="Writing a New Valgrind Tool">
+<chapter id="manual-writing-tools" xreflabel="Writing a New Valgrind Tool">
<title>Writing a New Valgrind Tool</title>
-<sect1 id="writing-tools.intro" xreflabel="Introduction">
-<title>Introduction</title>
-
So you want to write a Valgrind tool? Here are some instructions that may
help.
-<sect2 id="writing-tools.tools" xreflabel="Tools">
-<title>Tools</title>
+<sect1 id="manual-writing-tools.intro" xreflabel="Introduction">
+<title>Introduction</title>
<para>The key idea behind Valgrind's architecture is the division
between its "core" and "tool plug-ins".</para>
@@ -33,16 +30,14 @@
certain services, or be notified when certain interesting events
occur. But the core takes care of all the hard work.</para>
-</sect2>
-
</sect1>
-<sect1 id="writing-tools.writingatool" xreflabel="Writing a Tool">
+<sect1 id="manual-writing-tools.writingatool" xreflabel="Writing a Tool">
<title>Writing a Tool</title>
-<sect2 id="writing-tools.howtoolswork" xreflabel="How tools work">
+<sect2 id="manual-writing-tools.howtoolswork" xreflabel="How tools work">
<title>How tools work</title>
<para>Tool plug-ins must define various functions for instrumenting programs
@@ -53,7 +48,7 @@
</sect2>
-<sect2 id="writing-tools.gettingcode" xreflabel="Getting the code">
+<sect2 id="manual-writing-tools.gettingcode" xreflabel="Getting the code">
<title>Getting the code</title>
<para>To write your own tool, you'll need the Valgrind source code. You'll
@@ -65,7 +60,7 @@
</sect2>
-<sect2 id="writing-tools.gettingstarted" xreflabel="Getting started">
+<sect2 id="manual-writing-tools.gettingstarted" xreflabel="Getting started">
<title>Getting started</title>
<para>Valgrind uses GNU <computeroutput>automake</computeroutput> and
@@ -186,7 +181,7 @@
-<sect2 id="writing-tools.writingcode" xreflabel="Writing the Code">
+<sect2 id="manual-writing-tools.writingcode" xreflabel="Writing the Code">
<title>Writing the code</title>
<para>A tool must define at least these four functions:</para>
@@ -211,7 +206,7 @@
-<sect2 id="writing-tools.init" xreflabel="Initialisation">
+<sect2 id="manual-writing-tools.init" xreflabel="Initialisation">
<title>Initialisation</title>
<para>Most of the initialisation should be done in
@@ -267,7 +262,7 @@
-<sect2 id="writing-tools.instr" xreflabel="Instrumentation">
+<sect2 id="manual-writing-tools.instr" xreflabel="Instrumentation">
<title>Instrumentation</title>
<para><function>instrument()</function> is the interesting one. It
@@ -286,7 +281,7 @@
-<sect2 id="writing-tools.fini" xreflabel="Finalisation">
+<sect2 id="manual-writing-tools.fini" xreflabel="Finalisation">
<title>Finalisation</title>
<para>This is where you can present the final results, such as a summary
@@ -297,7 +292,7 @@
-<sect2 id="writing-tools.otherinfo" xreflabel="Other Important Information">
+<sect2 id="manual-writing-tools.otherinfo" xreflabel="Other Important Information">
<title>Other Important Information</title>
<para>Please note that the core/tool split infrastructure is quite
@@ -339,14 +334,14 @@
</sect2>
-<sect2 id="writing-tools.advice" xreflabel="Words of Advice">
+<sect2 id="manual-writing-tools.advice" xreflabel="Words of Advice">
<title>Words of Advice</title>
<para>Writing and debugging tools is not trivial. Here are some
suggestions for solving common problems.</para>
-<sect3 id="writing-tools.segfaults">
+<sect3 id="manual-writing-tools.segfaults">
<title>Segmentation Faults</title>
<para>If you are getting segmentation faults in C functions used by your
@@ -359,7 +354,7 @@
</sect3>
-<sect3 id="writing-tools.debugfns">
+<sect3 id="manual-writing-tools.debugfns">
<title>Debugging C functions</title>
<para>If you want to debug C functions used by your tool, you can
@@ -411,7 +406,7 @@
</sect3>
-<sect3 id="writing-tools.ucode-probs">
+<sect3 id="manual-writing-tools.ucode-probs">
<title>IR Instrumentation Problems</title>
<para>If you are having problems with your VEX IR instrumentation, it's
@@ -422,7 +417,7 @@
</sect3>
-<sect3 id="writing-tools.misc">
+<sect3 id="manual-writing-tools.misc">
<title>Miscellaneous</title>
<para>If you just want to know whether a program point has been reached,
@@ -442,13 +437,13 @@
-<sect1 id="writing-tools.advtopics" xreflabel="Advanced Topics">
+<sect1 id="manual-writing-tools.advtopics" xreflabel="Advanced Topics">
<title>Advanced Topics</title>
<para>Once a tool becomes more complicated, there are some extra
things you may want/need to do.</para>
-<sect2 id="writing-tools.suppressions" xreflabel="Suppressions">
+<sect2 id="manual-writing-tools.suppressions" xreflabel="Suppressions">
<title>Suppressions</title>
<para>If your tool reports errors and you want to suppress some common
@@ -467,7 +462,7 @@
</sect2>
-<sect2 id="writing-tools.docs" xreflabel="Documentation">
+<sect2 id="manual-writing-tools.docs" xreflabel="Documentation">
<title>Documentation</title>
<para>As of version 3.0.0, Valgrind documentation has been converted to
@@ -475,7 +470,7 @@
</para>
-<sect3 id="writing-tools.xml" xreflabel="The XML Toolchain">
+<sect3 id="manual-writing-tools.xml" xreflabel="The XML Toolchain">
<title>The XML Toolchain</title>
<para>If you are feeling conscientious and want to write some
@@ -514,7 +509,7 @@
</sect3>
-<sect3 id="writing-tools.writing" xreflabel="Writing the Documentation">
+<sect3 id="manual-writing-tools.writing" xreflabel="Writing the Documentation">
<title>Writing the Documentation</title>
<para>Follow these steps (using <computeroutput>foobar</computeroutput>
@@ -610,7 +605,7 @@
</sect2>
-<sect2 id="writing-tools.regtests" xreflabel="Regression Tests">
+<sect2 id="manual-writing-tools.regtests" xreflabel="Regression Tests">
<title>Regression Tests</title>
<para>Valgrind has some support for regression tests. If you want to
@@ -655,7 +650,7 @@
-<sect2 id="writing-tools.profiling" xreflabel="Profiling">
+<sect2 id="manual-writing-tools.profiling" xreflabel="Profiling">
<title>Profiling</title>
<para>To profile a tool, use Cachegrind on it. Read README_DEVELOPERS for
@@ -669,7 +664,7 @@
-<sect2 id="writing-tools.mkhackery" xreflabel="Other Makefile Hackery">
+<sect2 id="manual-writing-tools.mkhackery" xreflabel="Other Makefile Hackery">
<title>Other Makefile Hackery</title>
<para>If you add any directories under
@@ -687,7 +682,7 @@
-<sect2 id="writing-tools.ifacever" xreflabel="Core/tool Interface Versions">
+<sect2 id="manual-writing-tools.ifacever" xreflabel="Core/tool Interface Versions">
<title>Core/tool Interface Versions</title>
<para>In order to allow for the core/tool interface to evolve over time,
@@ -714,7 +709,7 @@
-<sect1 id="writing-tools.finalwords" xreflabel="Final Words">
+<sect1 id="manual-writing-tools.finalwords" xreflabel="Final Words">
<title>Final Words</title>
<para>The core/tool interface is not fixed. It's pretty stable these days,
Modified: trunk/docs/xml/manual.xml
===================================================================
--- trunk/docs/xml/manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
+++ trunk/docs/xml/manual.xml 2009-07-29 03:34:56 UTC (rev 10653)
@@ -44,7 +44,5 @@
xmlns:xi="http://www.w3.org/2001/XInclude" />
<xi:include href="../../lackey/docs/lk-manual.xml" parse="xml"
xmlns:xi="http://www.w3.org/2001/XInclude" />
- <xi:include href="manual-writing-tools.xml" parse="xml"
- xmlns:xi="http://www.w3.org/2001/XInclude" />
</book>
|
|
From: Tom H. <th...@cy...> - 2009-07-29 02:49:23
|
Nightly build on lloyd ( x86_64, Fedora 7 ) Started at 2009-07-29 03:05:05 BST Ended at 2009-07-29 03:49:05 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 519 tests, 1 stderr failure, 0 stdout failures, 0 post failures == helgrind/tests/tc06_two_races_xml (stderr) |
Author: njn
Date: 2009-07-29 03:36:21 +0100 (Wed, 29 Jul 2009)
New Revision: 10652
Log:
Started overhauling the documentation:
- There were detailed descriptions of all the tools in the Quick Start
Guide, the Manual introduction, and the start of each tool chapter. To
avoid duplication/overlap, I removed these altogether from the Quick Start
Guide, and shortened them in the intro.
- Improved the description of what errors Memcheck can find.
- Made all tool chapters start with "Overview" section, for consistency.
- Made the "run with --tool=XXX" bit consistent in each tool chapter.
- Made all tool chapter titles match the description given when running them.
- Added BBV to the User Manual intro.
- Generally clarified, updated, and future-proofed various bits of text in
the Quick Start Guide and User Manual introduction.
Also:
- Changed Nulgrind's start-up description to "the minimal Valgrind tool".
- Fixed some punctuation in the usage message.
Modified:
trunk/cachegrind/docs/cg-manual.xml
trunk/callgrind/docs/cl-manual.xml
trunk/coregrind/m_main.c
trunk/docs/xml/manual-intro.xml
trunk/docs/xml/manual-writing-tools.xml
trunk/docs/xml/quick-start-guide.xml
trunk/drd/docs/drd-manual.xml
trunk/exp-bbv/docs/bbv-manual.xml
trunk/exp-ptrcheck/docs/pc-manual.xml
trunk/helgrind/docs/hg-manual.xml
trunk/lackey/docs/lk-manual.xml
trunk/massif/docs/ms-manual.xml
trunk/memcheck/docs/mc-manual.xml
trunk/none/docs/nl-manual.xml
trunk/none/nl_main.c
trunk/none/tests/cmdline1.stdout.exp
trunk/none/tests/cmdline2.stdout.exp
trunk/none/tests/filter_stderr
Modified: trunk/cachegrind/docs/cg-manual.xml
===================================================================
--- trunk/cachegrind/docs/cg-manual.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/cachegrind/docs/cg-manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -4,27 +4,22 @@
[ <!ENTITY % vg-entities SYSTEM "../../docs/xml/vg-entities.xml"> %vg-entities; ]>
-<chapter id="cg-manual" xreflabel="Cachegrind: a cache-miss profiler">
-<title>Cachegrind: a cache and branch profiler</title>
+<chapter id="cg-manual" xreflabel="Cachegrind: a cache and branch-prediction profiler">
+<title>Cachegrind: a cache and branch-prediction profiler</title>
-<sect1 id="cg-manual.cache" xreflabel="Cache profiling">
-<title>Cache and branch profiling</title>
-
<para>To use this tool, you must specify
<computeroutput>--tool=cachegrind</computeroutput> on the
Valgrind command line.</para>
-<para>Cachegrind is a tool for finding places where programs
-interact badly with typical modern superscalar processors
-and run slowly as a result.
-In particular, it will do a cache simulation of your program,
-and optionally a branch-predictor simulation, and can
-then annotate your source line-by-line with the number of cache
-misses and branch mispredictions. The following statistics are
-collected:</para>
+<sect1 id="cg-manual.overview" xreflabel="Overview">
+<title>Overview</title>
+
+<para>Cachegrind simulates how your program interacts with a machine's cache
+hierarchy and (optionally) branch predictor. It gathers the following
+statistics:</para>
<itemizedlist>
<listitem>
- <para>L1 instruction cache reads and misses;</para>
+ <para>L1 instruction cache reads and read misses;</para>
</listitem>
<listitem>
<para>L1 data cache reads and read misses, writes and write
@@ -44,24 +39,28 @@
</listitem>
</itemizedlist>
+<para>These statistics are presented for the entire program and for each
+function in the program. You can also annotate each line of source code in
+the program with the counts that were caused directly by it.</para>
+
<para>On a modern machine, an L1 miss will typically cost
around 10 cycles, an L2 miss can cost as much as 200
cycles, and a mispredicted branch costs in the region of 10
to 30 cycles. Detailed cache and branch profiling can be very useful
-for improving the performance of your program.</para>
+for understanding how your program interacts with the machine and thus how
+to make it faster.</para>
<para>Also, since one instruction cache read is performed per
instruction executed, you can find out how many instructions are
-executed per line, which can be useful for traditional profiling
-and test coverage.</para>
+executed per line, which can be useful for traditional profiling.</para>
<para>Branch profiling is not enabled by default. To use it, you must
additionally specify <computeroutput>--branch-sim=yes</computeroutput>
on the command line.</para>
-<sect2 id="cg-manual.overview" xreflabel="Overview">
-<title>Overview</title>
+<sect2 id="cg-manual.basics" xreflabel="Basics">
+<title>Basics</title>
<para>First off, as for normal Valgrind use, you probably want to
compile with debugging info (the
@@ -169,7 +168,7 @@
<para>The cache configuration simulated (cache size,
associativity and line size) is determined automagically using
-the CPUID instruction. If you have an old machine that (a)
+the x86 CPUID instruction. If you have an machine that (a)
doesn't support the CPUID instruction, or (b) supports it in an
early incarnation that doesn't give any cache information, then
Cachegrind will fall back to using a default configuration (that
Modified: trunk/callgrind/docs/cl-manual.xml
===================================================================
--- trunk/callgrind/docs/cl-manual.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/callgrind/docs/cl-manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -4,9 +4,13 @@
[ <!ENTITY % cl-entities SYSTEM "cl-entities.xml"> %cl-entities; ]>
<chapter id="cl-manual" xreflabel="Callgrind Manual">
-<title>Callgrind: a call graph profiler</title>
+<title>Callgrind: a call-graph generating cache profiler</title>
+<para>To use this tool, you must specify
+<computeroutput>--tool=callgrind</computeroutput> on the
+Valgrind command line.</para>
+
<sect1 id="cl-manual.use" xreflabel="Overview">
<title>Overview</title>
Modified: trunk/coregrind/m_main.c
===================================================================
--- trunk/coregrind/m_main.c 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/coregrind/m_main.c 2009-07-29 02:36:21 UTC (rev 10652)
@@ -212,8 +212,8 @@
" Extra options read from ~/.valgrindrc, $VALGRIND_OPTS, ./.valgrindrc\n"
"\n"
" %s is %s\n"
-" Valgrind is Copyright (C) 2000-2009, and GNU GPL'd, by Julian Seward et al\n"
-" LibVEX is Copyright (C) 2004-2009, and GNU GPL'd, by OpenWorks LLP\n"
+" Valgrind is Copyright (C) 2000-2009, and GNU GPL'd, by Julian Seward et al.\n"
+" LibVEX is Copyright (C) 2004-2009, and GNU GPL'd, by OpenWorks LLP.\n"
"\n"
" Bug reports, feedback, admiration, abuse, etc, to: %s.\n"
"\n";
Modified: trunk/docs/xml/manual-intro.xml
===================================================================
--- trunk/docs/xml/manual-intro.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/docs/xml/manual-intro.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -1,6 +1,7 @@
<?xml version="1.0"?> <!-- -*- sgml -*- -->
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+ "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
+[ <!ENTITY % vg-entities SYSTEM "vg-entities.xml"> %vg-entities; ]>
<chapter id="manual-intro" xreflabel="Introduction">
<title>Introduction</title>
@@ -8,163 +9,81 @@
<sect1 id="manual-intro.overview" xreflabel="An Overview of Valgrind">
<title>An Overview of Valgrind</title>
-<para>Valgrind is a suite of simulation-based debugging and profiling
-tools for programs running on Linux (x86, amd64, ppc32 and ppc64).
-The system consists of a core, which provides a synthetic CPU in
-software, and a set of tools, each of which performs some kind of
-debugging, profiling, or similar task. The architecture is modular,
-so that new tools can be created easily and without disturbing the
-existing structure.</para>
+<para>Valgrind is an instrumentation framework for building dynamic analysis
+tools. It comes with a set of tools each of which performs some kind of
+debugging, profiling, or similar task that helps you improve your programs.
+Valgrind's architecture is modular, so new tools can be created easily
+and without disturbing the existing structure.</para>
-<para>A number of useful tools are supplied as standard. In
-summary, these are:</para>
+<para>A number of useful tools are supplied as standard.</para>
<orderedlist>
<listitem>
- <para><command>Memcheck</command> detects memory-management problems
- in programs. All reads and writes of memory are checked, and
- calls to malloc/new/free/delete are intercepted. As a result,
- Memcheck can detect the following problems:</para>
-
- <itemizedlist>
- <listitem>
- <para>Use of uninitialised memory</para>
- </listitem>
- <listitem>
- <para>Reading/writing memory after it has been
- free'd</para>
- </listitem>
- <listitem>
- <para>Reading/writing off the end of malloc'd
- blocks</para>
- </listitem>
- <listitem>
- <para>Reading/writing inappropriate areas on the
- stack</para>
- </listitem>
- <listitem>
- <para>Memory leaks -- where pointers to malloc'd
- blocks are lost forever</para>
- </listitem>
- <listitem>
- <para>Mismatched use of malloc/new/new [] vs
- free/delete/delete []</para>
- </listitem>
- <listitem>
- <para>Overlapping <computeroutput>src</computeroutput> and
- <computeroutput>dst</computeroutput> pointers in
- <computeroutput>memcpy()</computeroutput> and related
- functions</para></listitem>
- </itemizedlist>
-
- <para>Problems like these can be difficult to find by other means,
- often remaining undetected for long periods, then causing occasional,
- difficult-to-diagnose crashes.</para>
- </listitem>
+ <para><command>Memcheck</command> is a memory error detector. It helps
+ you make your programs, particularly those written in C and C++, more
+ correct.</para>
+ </listitem>
- <listitem>
- <para><command>Cachegrind</command> is a cache profiler. It
- performs detailed simulation of the I1, D1 and L2 caches in your CPU
- and so can accurately pinpoint the sources of cache misses in your
- code. It will show the number of cache misses,
- memory references and instructions accruing to each line of source
- code, with per-function, per-module and whole-program summaries. If
- you ask really nicely it will even show counts for each individual
- machine instruction.</para>
+ <listitem>
+ <para><command>Cachegrind</command> is a cache and branch-prediction
+ profiler. It can help you make your programs run faster.</para>
+ </listitem>
- <para>On x86 and and64, Cachegrind auto-detects your machine's cache
- configuration using the <computeroutput>CPUID</computeroutput>
- instruction, and so needs no further configuration info, in most
- cases.</para>
- </listitem>
+ <listitem>
+ <para><command>Callgrind</command> is a call-graph generating cache
+ profiler. It has some overlap with Cachegrind, but also gathers some
+ information that Cachegrind does not.</para>
+ </listitem>
- <listitem>
- <para><command>Callgrind</command> is a profiler similar in
- concept to Cachegrind, but which also tracks caller-callee
- relationships. By doing so it is able to show how instruction,
- memory reference and cache miss costs flow between callers and
- callees. Callgrind collects a large amount of data which is best
- navigated using Josef Weidendorfer's amazing KCachegrind
- visualisation tool (<ulink
- url="http://kcachegrind.sourceforge.net/cgi-bin/show.cgi/KcacheGrindIndex">http://kcachegrind.sourceforge.net</ulink>).
- KCachegrind is a KDE application which presents
- these profiling results in a
- graphical and easy-to-understand form.</para>
- </listitem>
+ <listitem>
+ <para><command>Helgrind</command> is a thread error detector.
+ It can help you make your multi-threaded programs more correct.
+ </para>
+ </listitem>
- <listitem>
- <para><command>Helgrind</command> detects synchronisation errors
- in programs that use the POSIX pthreads threading primitives. It
- detects the following three classes of errors:</para>
+ <listitem>
+ <para><command>DRD</command> is also a thread error detector. It is
+ similar to Helgrind but uses different analysis techniques and so may
+ find different problems.</para>
+ </listitem>
- <itemizedlist>
- <listitem>
- <para>Misuses of the POSIX pthreads API.</para>
- </listitem>
- <listitem>
- <para>Potential deadlocks arising from lock ordering
- problems.</para>
- </listitem>
- <listitem>
- <para>Data races -- accessing memory without adequate locking.</para>
- </listitem>
- </itemizedlist>
+ <listitem>
+ <para><command>Massif</command> is a heap profiler. It can help you
+ make your programs use less memory.</para>
+ </listitem>
- <para>Problems like these often result in unreproducible,
- timing-dependent crashes, deadlocks and other misbehaviour, and
- can be difficult to find by other means.</para>
- </listitem>
+ <listitem>
+ <para><command>Ptrcheck</command> is an experimental heap, stack and
+ global array overrun detector. Its functionality overlaps somewhat
+ with Memcheck's, but it can find some problems that Memcheck would
+ miss.</para>
+ </listitem>
- <listitem>
- <para><command>DRD</command> is similar to Helgrind, but uses a
- different analysis technique and so may find different problems.
- </para>
- </listitem>
+ <listitem>
+ <para><command>BBV</command> is an experimental SimPoint basic block
+ vector generator. It is useful to people doing computer architecture
+ research and development.</para>
+ </listitem>
- <listitem>
- <para><command>Massif</command> is a heap profiler.
- It measures how much heap memory programs use. In particular,
- it can give you information about heap blocks, heap
- administration overheads, and stack sizes.</para>
-
- <para>Heap profiling can help you reduce the amount of
- memory your program uses. On modern machines with virtual
- memory, this reduces the chances that your program will run out
- of memory, and may make it faster by reducing the amount of
- paging needed.</para>
- </listitem>
-
- <listitem>
- <para><command>Ptrcheck</command> is an experimental pointer checking
- tool. Its functionality overlaps somewhat with Memcheck's, but it can
- find some problems that Memcheck would miss.</para>
- </listitem>
-
-
</orderedlist>
+<para>There are also a couple of minor tools that aren't useful to
+most users: <command>Lackey</command> is an example tool that illustrates
+some instrumentation basics; and <command>Nulgrind</command> is the minimal
+Valgrind tool that does no analysis or instrumentation, and is only useful
+for testing purposes.</para>
-<para>A couple of minor tools (<command>Lackey</command> and
-<command>Nulgrind</command>) are also supplied. These aren't
-particularly useful -- they exist to illustrate how to create simple
-tools and to help the valgrind developers in various ways. Nulgrind is
-the null tool -- it adds no instrumentation. Lackey is a simple example
-tool which counts instructions, memory accesses, and the number of
-integer and floating point operations your program does.</para>
-
<para>Valgrind is closely tied to details of the CPU and operating
system, and to a lesser extent, the compiler and basic C libraries.
-Nonetheless, as of version 3.3.0 it supports several platforms:
-x86/Linux (mature), amd64/Linux (maturing), ppc32/Linux and
-ppc64/Linux (less mature but work well). There is also experimental
-support for ppc32/AIX5 and ppc64/AIX5 (AIX 5.2 and 5.3 only).
-Valgrind uses the standard Unix
+Nonetheless, it supports a number of widely-used platforms, listed in full
+at <ulink url="&vg-url;">&vg-url;</ulink>.</para>
+
+<para>Valgrind is built via the standard Unix
<computeroutput>./configure</computeroutput>,
<computeroutput>make</computeroutput>, <computeroutput>make
-install</computeroutput> mechanism, and we have attempted to ensure that
-it works on machines with Linux kernel 2.4.X or 2.6.X and glibc
-2.2.X to 2.7.X.</para>
+install</computeroutput> process; full details are given in the
+README file in the distribution.</para>
<para>Valgrind is licensed under the <xref linkend="license.gpl"/>,
version 2. The <computeroutput>valgrind/*.h</computeroutput> headers
@@ -182,7 +101,8 @@
contributions are licensed as "GPLv2, or (at your option) any later
version." This is so as to allow the possibility of easily upgrading
the license to GPLv3 in future. If you want to modify code in the VEX
-subdirectory, please also see VEX/HACKING.README.</para>
+subdirectory, please also see the file VEX/HACKING.README in the
+distribution.</para>
</sect1>
@@ -191,11 +111,8 @@
<sect1 id="manual-intro.navigation" xreflabel="How to navigate this manual">
<title>How to navigate this manual</title>
-<para>The Valgrind distribution consists of the Valgrind core, upon
-which are built Valgrind tools. The tools do different kinds of debugging
-and profiling. This manual is structured similarly.</para>
-
-<para>First, we describe the Valgrind core, how to use it, and the flags
+<para>This manual's structure reflects the structure of Valgrind itself.
+First, we describe the Valgrind core, how to use it, and the flags
it supports. Then, each tool has its own chapter in this manual. You
only need to read the documentation for the core and for the tool(s) you
actually use, although you may find it helpful to be at least a little
@@ -209,9 +126,8 @@
accepted -- you have to read the flags documentation both for
<xref linkend="manual-core"/> and for the tool you want to use.</para>
-<para>The manual is quite big and complex. If you are looking for a
-quick getting-started guide, have a look at
-<xref linkend="quick-start"/>.</para>
+<para>The manual is quite big and complex. If you want to start using
+Valgrind more quickly, read <xref linkend="quick-start"/>.</para>
</sect1>
Modified: trunk/docs/xml/manual-writing-tools.xml
===================================================================
--- trunk/docs/xml/manual-writing-tools.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/docs/xml/manual-writing-tools.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -11,7 +11,7 @@
<title>Introduction</title>
So you want to write a Valgrind tool? Here are some instructions that may
-help. They were last updated for Valgrind 3.2.2.
+help.
<sect2 id="writing-tools.tools" xreflabel="Tools">
<title>Tools</title>
Modified: trunk/docs/xml/quick-start-guide.xml
===================================================================
--- trunk/docs/xml/quick-start-guide.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/docs/xml/quick-start-guide.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -26,72 +26,16 @@
<title>Introduction</title>
<para>The Valgrind tool suite provides a number of debugging and
-profiling tools. The most popular is
-Memcheck, a memory checking tool which can detect many common
-memory errors such as:</para>
+profiling tools that help you make your programs faster and more correct.
+The most popular of these tools is called Memcheck. It can detect many
+memory-related errors that are common in C and C++ programs and that can
+lead to crashes and unpredictable behaviour.</para>
-<itemizedlist>
- <listitem>
- <para>Touching memory you shouldn't (eg. overrunning heap block
- boundaries, or reading/writing freed memory).</para>
- </listitem>
- <listitem>
- <para>Using values before they have been initialized.</para>
- </listitem>
- <listitem>
- <para>Incorrect freeing of memory, such as double-freeing heap
- blocks.</para>
- </listitem>
- <listitem>
- <para>Memory leaks.</para>
- </listitem>
-</itemizedlist>
+<para>The rest of this guide gives the minimum information you need to start
+detecting memory errors in your program with Memcheck. For full
+documentation of Memcheck and the other tools, please read the User Manual.
+</para>
-<para>Memcheck is only one of the tools in the Valgrind suite.
-Other tools you may find useful are:</para>
-
-<itemizedlist>
- <listitem>
- <para>Cachegrind: a profiling tool which produces detailed data on
- cache (miss) and branch (misprediction) events. Statistics are
- gathered for the entire program, for each function, and for each
- line of code, if you need that level of detail.</para>
- </listitem>
- <listitem>
- <para>Callgrind: a profiling tool that shows cost relationships
- across function calls, optionally with cache simulation similar to
- Cachegrind. Information gathered by Callgrind can be viewed
- either with an included command line tool, or by using the
- KCachegrind GUI. KCachegrind is not part of the Valgrind suite
- -- it is part of the KDE Desktop Environment.</para>
- </listitem>
- <listitem>
- <para>Massif: a space profiling tool. It allows you to explore
- in detail which parts of your program allocate memory.</para>
- </listitem>
- <listitem>
- <para>Helgrind: a debugging tool for threaded programs. Helgrind
- looks for various kinds of synchronisation errors in code that uses
- the POSIX PThreads API.</para>
- </listitem>
- <listitem>
- <para>In addition, there are a number of "experimental" tools in
- the codebase. They can be distinguished by the "exp-" prefix on
- their names. Experimental tools are not subject to the same
- quality control standards that apply to our production-grade tools
- (Memcheck, Cachegrind, Callgrind, Massif, Helgrind and DRD).</para>
- </listitem>
-</itemizedlist>
-
-<para>The rest of this guide discusses only the Memcheck tool. For
-full documentation on the other tools, and for Memcheck, see the
-Valgrind User Manual.</para>
-
-<para>What follows is the minimum information you need to start
-detecting memory errors in your program with Memcheck. Note that this
-guide applies to Valgrind version 3.4.0 and later. Some of the
-information is not quite right for earlier versions.</para>
-
</sect1>
@@ -103,9 +47,9 @@
numbers. Using <computeroutput>-O0</computeroutput> is also a good
idea, if you can tolerate the slowdown. With
<computeroutput>-O1</computeroutput> line numbers in error messages can
-be inaccurate, although generally speaking Memchecking code compiled at
-<computeroutput>-O1</computeroutput> works fairly well and is
-recommended. Use of
+be inaccurate, although generally speaking running Memcheck on code compiled
+at <computeroutput>-O1</computeroutput> works fairly well.
+Use of
<computeroutput>-O2</computeroutput> and above is not recommended as
Memcheck occasionally reports uninitialised-value errors which don't
really exist.</para>
@@ -137,8 +81,8 @@
<sect1 id="quick-start.interpret"
xreflabel="Interpreting Memcheck's output">
<title>Interpreting Memcheck's output</title>
-<para>Here's an example C program with a memory error and a memory
-leak.</para>
+<para>Here's an example C program, in a file called a.c, with a memory error
+and a memory leak.</para>
<programlisting>
#include <stdlib.h>
@@ -237,12 +181,13 @@
</listitem>
</itemizedlist>
-<para>It can be difficult to track down the root causes of
-uninitialised-value errors reported by Memcheck. Try using
-the <option>--track-origins=yes</option> to get extra information.
-This makes Memcheck run slower, but the extra information you get
-often saves a lot of time figuring out where the uninitialised values
-are coming from.</para>
+<para>Memcheck also reports uses of uninitialised values, most commonly with
+the message "Conditional jump or move depends on uninitialised
+value(s)". It can be difficult to determine the root cause of these errors.
+Try using the <option>--track-origins=yes</option> to get extra information.
+This makes Memcheck run slower, but the extra information you get often
+saves a lot of time figuring out where the uninitialised values are coming
+from.</para>
<para>If you don't understand an error message, please consult
<xref linkend="mc-manual.errormsgs"/> in the <xref linkend="manual"/>
@@ -275,8 +220,8 @@
changes to the program cause Memcheck to report new errors.
Experience from several years of Memcheck use shows that it is
possible to make even huge programs run Memcheck-clean. For example,
-large parts of KDE 3.5.X, and recent versions of OpenOffice.org
-(2.3.0) are Memcheck-clean, or very close to it.</para>
+large parts of KDE, OpenOffice.org and Firefox are Memcheck-clean, or very
+close to it.</para>
</sect1>
Modified: trunk/drd/docs/drd-manual.xml
===================================================================
--- trunk/drd/docs/drd-manual.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/drd/docs/drd-manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -13,7 +13,7 @@
<sect1 id="drd-manual.overview" xreflabel="Overview">
-<title>Background</title>
+<title>Overview</title>
<para>
DRD is a Valgrind tool for detecting errors in multithreaded C and C++
Modified: trunk/exp-bbv/docs/bbv-manual.xml
===================================================================
--- trunk/exp-bbv/docs/bbv-manual.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/exp-bbv/docs/bbv-manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -3,14 +3,14 @@
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<chapter id="bbv-manual" xreflabel="BBV">
- <title>BBV: a Basic Block Vector generation tool</title>
+ <title>BBV: an experimental basic block vector generation tool</title>
<para>To use this tool, you must specify
<computeroutput>--tool=exp-bbv</computeroutput> on the Valgrind
command line.</para>
-<sect1 id="bbv-manual.background" xreflabel="BBV Background">
-<title>Basic Block Profiling and SimPoint</title>
+<sect1 id="bbv-manual.overview" xreflabel="Overview">
+<title>Overview</title>
<para>
A Basic Blocks Vector (BBV) is a list of all basic blocks entered
@@ -20,7 +20,7 @@
</para>
<para>
- This tool was written to generate basic block vectors
+ BBV is tool that generates basic block vectors
for use with the SimPoint analysis tool
(http://www.cse.ucsd.edu/~calder/simpoint/).
The SimPoint methodology enables speeding up architectural
@@ -39,14 +39,14 @@
In computer architecture research, running a
benchmark on a cycle-accurate simulator can cause slowdowns on the order
of 1000 times, making it take days, weeks, or even longer to run full
- benchmarks. By utilizing SimPoint this can be reduced significantly
- while still retaining reasonable accuracy, usually in the 5-10% range.
+ benchmarks. By utilizing SimPoint this can be reduced significantly,
+ usually by 90-95%, while still retaining reasonable accuracy.
</para>
<para>
A more complete introduction to how SimPoint works can be
found in the paper "Automatically Characterizing Large Scale
- Program Behavior" by T. Sherwood, E Perelman, G. Hamerly, and
+ Program Behavior" by T. Sherwood, E. Perelman, G. Hamerly, and
B. Calder.
</para>
Modified: trunk/exp-ptrcheck/docs/pc-manual.xml
===================================================================
--- trunk/exp-ptrcheck/docs/pc-manual.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/exp-ptrcheck/docs/pc-manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -5,8 +5,8 @@
<chapter id="pc-manual"
- xreflabel="Ptrcheck: an (experimental) pointer checking tool">
- <title>Ptrcheck: an (experimental) pointer checking tool</title>
+ xreflabel="Ptrcheck: an experimental heap, stack & global array overrun detector">
+ <title>Ptrcheck: an experimental heap, stack & global array overrun detector</title>
<para>To use this tool, you must specify
<computeroutput>--tool=exp-ptrcheck</computeroutput> on the Valgrind
@@ -18,7 +18,7 @@
<sect1 id="pc-manual.overview" xreflabel="Overview">
<title>Overview</title>
-<para>Ptrcheck is a Valgrind tool for finding overruns of heap, stack
+<para>Ptrcheck is a tool for finding overruns of heap, stack
and global arrays. Its functionality overlaps somewhat with
Memcheck's, but it is able to catch invalid accesses in a number of
cases that Memcheck would miss. A detailed comparison against
Modified: trunk/helgrind/docs/hg-manual.xml
===================================================================
--- trunk/helgrind/docs/hg-manual.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/helgrind/docs/hg-manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -12,8 +12,6 @@
command line.</para>
-
-
<sect1 id="hg-manual.overview" xreflabel="Overview">
<title>Overview</title>
@@ -26,14 +24,6 @@
thread exit, mutexes (locks), condition variables (inter-thread event
notifications), reader-writer locks, semaphores and barriers.</para>
-<para>Helgrind is aware of all these abstractions and tracks their
-effects as accurately as it can. Currently it does not correctly
-handle pthread spinlocks, although it will not object if you use them.
-Adding support for spinlocks would be easy enough if the demand arises.
-On x86 and amd64 platforms, it understands and partially handles
-implicit locking arising from the use of the LOCK instruction prefix.
-</para>
-
<para>Helgrind can detect three classes of errors, which are discussed
in detail in the next three sections:</para>
@@ -58,6 +48,19 @@
</listitem>
</orderedlist>
+<para>Problems like these often result in unreproducible,
+timing-dependent crashes, deadlocks and other misbehaviour, and
+can be difficult to find by other means.</para>
+
+<para>Helgrind is aware of all the pthread abstractions and tracks their
+effects as accurately as it can. Currently it does not correctly
+handle pthread spinlocks, although it will not object if you use them.
+Adding support for spinlocks would be easy enough if the demand arises.
+On x86 and amd64 platforms, it understands and partially handles
+implicit locking arising from the use of the LOCK instruction prefix.
+</para>
+
+
<para>Following those is a section containing
<link linkend="hg-manual.effective-use">
hints and tips on how to get the best out of Helgrind.</link>
Modified: trunk/lackey/docs/lk-manual.xml
===================================================================
--- trunk/lackey/docs/lk-manual.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/lackey/docs/lk-manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -4,7 +4,7 @@
<chapter id="lk-manual" xreflabel="Lackey">
-<title>Lackey: a simple profiler and memory tracer</title>
+<title>Lackey: an example tool</title>
<para>To use this tool, you must specify
<computeroutput>--tool=lackey</computeroutput> on the Valgrind
Modified: trunk/massif/docs/ms-manual.xml
===================================================================
--- trunk/massif/docs/ms-manual.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/massif/docs/ms-manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -7,21 +7,16 @@
<chapter id="ms-manual" xreflabel="Massif: a heap profiler">
<title>Massif: a heap profiler</title>
-<emphasis>Please note that this documentation describes Massif version 3.3.0
-and later. Massif was significantly overhauled for 3.3.0; versions 3.2.3
-and earlier presented the profiling information an a quite different manner,
-and so this documentation only pertains to the later versions.</emphasis>
-
<para>To use this tool, you must specify
<computeroutput>--tool=massif</computeroutput> on the Valgrind
command line.</para>
-<sect1 id="ms-manual.spaceprof" xreflabel="Heap profiling">
-<title>Heap profiling</title>
+<sect1 id="ms-manual.overview" xreflabel="Overview">
+<title>Overview</title>
<para>Massif is a heap profiler. It measures how much heap memory your
program uses. This includes both the useful space, and the extra bytes
-allocated for book-keeping purposes and alignment purposes. It can also
+allocated for book-keeping and alignment purposes. It can also
measure the size of your program's stack(s), although it does not do so by
default.</para>
Modified: trunk/memcheck/docs/mc-manual.xml
===================================================================
--- trunk/memcheck/docs/mc-manual.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/memcheck/docs/mc-manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -3,55 +3,56 @@
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
-<chapter id="mc-manual" xreflabel="Memcheck: a heavyweight memory checker">
-<title>Memcheck: a heavyweight memory checker</title>
+<chapter id="mc-manual" xreflabel="Memcheck: a memory error detector">
+<title>Memcheck: a memory error detector</title>
<para>To use this tool, you may specify <option>--tool=memcheck</option>
on the Valgrind command line. You don't have to, though, since Memcheck
is the default tool.</para>
-<sect1 id="mc-manual.bugs"
- xreflabel="Kinds of bugs that Memcheck can find">
-<title>Kinds of bugs that Memcheck can find</title>
+<sect1 id="mc-manual.overview" xreflabel="Overview">
+<title>Overview</title>
-<para>Memcheck is Valgrind's heavyweight memory checking tool. All
-reads and writes of memory are checked, and calls to
-<function>malloc</function>/<computeroutput>new</computeroutput>/<function>free</function>/<computeroutput>delete</computeroutput>
-are intercepted. As a result, Memcheck can detect the following
-problems:</para>
+<para>Memcheck is a memory error detector. It can detect the following
+problems that are common in C and C++ programs.</para>
<itemizedlist>
<listitem>
- <para>Use of uninitialised memory</para>
+ <para>Accessing memory you shouldn't, e.g. overrunning and underrunning
+ heap blocks, overrunning the top of the stack, and accessing memory after
+ it has been freed.</para>
</listitem>
+
<listitem>
- <para>Reading/writing memory after it has been free'd</para>
+ <para>Using undefined values, i.e. values that have not been initialised,
+ or that have been derived from other undefined values.</para>
</listitem>
+
<listitem>
- <para>Reading/writing off the end of malloc'd blocks</para>
- </listitem>
- <listitem>
- <para>Reading/writing inappropriate areas on the stack</para>
- </listitem>
- <listitem>
- <para>Memory leaks - where pointers to malloc'd blocks are
- lost forever</para>
- </listitem>
- <listitem>
- <para>Mismatched use of
+ <para>Incorrect freeing of heap memory, such as double-freeing heap
+ blocks, or mismatched use of
<function>malloc</function>/<computeroutput>new</computeroutput>/<computeroutput>new[]</computeroutput>
versus
<function>free</function>/<computeroutput>delete</computeroutput>/<computeroutput>delete[]</computeroutput></para>
</listitem>
+
<listitem>
<para>Overlapping <computeroutput>src</computeroutput> and
<computeroutput>dst</computeroutput> pointers in
- <function>memcpy()</function> and related
- functions</para>
+ <computeroutput>memcpy()</computeroutput> and related
+ functions.</para>
</listitem>
+
+ <listitem>
+ <para>Memory leaks.</para>
+ </listitem>
</itemizedlist>
+<para>Problems like these can be difficult to find by other means,
+often remaining undetected for long periods, then causing occasional,
+difficult-to-diagnose crashes.</para>
+
</sect1>
Modified: trunk/none/docs/nl-manual.xml
===================================================================
--- trunk/none/docs/nl-manual.xml 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/none/docs/nl-manual.xml 2009-07-29 02:36:21 UTC (rev 10652)
@@ -5,18 +5,26 @@
<chapter id="nl-manual" xreflabel="Nulgrind">
-<title>Nulgrind: the "null" tool</title>
-<subtitle>A tool that does not very much at all</subtitle>
+<title>Nulgrind: the minimal Valgrind tool</title>
-<para>Nulgrind is the minimal tool for Valgrind. It does no
-initialisation or finalisation, and adds no instrumentation to
-the program's code. It is mainly of use for Valgrind's
-developers for debugging and regression testing.</para>
+<para>To use this tool, you must specify
+<computeroutput>--tool=none</computeroutput> on the Valgrind
+command line.</para>
+<sect1 id="ms-manual.overview" xreflabel="Overview">
+<title>Overview</title>
+
+<para>Nulgrind is the simplest possible Valgrind tool. It performs no
+instrumentation or analysis of a program, just runs it normally. It is
+mainly of use for Valgrind's developers for debugging and regression
+testing.</para>
+
<para>Nonetheless you can run programs with Nulgrind. They will run
roughly 5 times more slowly than normal, for no useful effect. Note
that you need to use the option <option>--tool=none</option> to run
Nulgrind (ie. not <option>--tool=nulgrind</option>).</para>
+</sect1>
+
</chapter>
Modified: trunk/none/nl_main.c
===================================================================
--- trunk/none/nl_main.c 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/none/nl_main.c 2009-07-29 02:36:21 UTC (rev 10652)
@@ -1,11 +1,11 @@
/*--------------------------------------------------------------------*/
-/*--- Nulgrind: The null tool. nl_main.c ---*/
+/*--- Nulgrind: The minimal Valgrind tool. nl_main.c ---*/
/*--------------------------------------------------------------------*/
/*
- This file is part of Nulgrind, the simplest possible Valgrind tool,
- which does nothing.
+ This file is part of Nulgrind, the minimal Valgrind tool,
+ which does no instrumentation or analysis.
Copyright (C) 2002-2009 Nicholas Nethercote
nj...@va...
@@ -53,7 +53,7 @@
{
VG_(details_name) ("Nulgrind");
VG_(details_version) (NULL);
- VG_(details_description) ("a binary JIT-compiler");
+ VG_(details_description) ("the minimal Valgrind tool");
VG_(details_copyright_author)(
"Copyright (C) 2002-2009, and GNU GPL'd, by Nicholas Nethercote.");
VG_(details_bug_reports_to) (VG_BUGS_TO);
Modified: trunk/none/tests/cmdline1.stdout.exp
===================================================================
--- trunk/none/tests/cmdline1.stdout.exp 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/none/tests/cmdline1.stdout.exp 2009-07-29 02:36:21 UTC (rev 10652)
@@ -56,8 +56,8 @@
Extra options read from ~/.valgrindrc, $VALGRIND_OPTS, ./.valgrindrc
Nulgrind is Copyright (C) 2002-2009, and GNU GPL'd, by Nicholas Nethercote.
- Valgrind is Copyright (C) 2000-2009, and GNU GPL'd, by Julian Seward et al
- LibVEX is Copyright (C) 2004-2009, and GNU GPL'd, by OpenWorks LLP
+ Valgrind is Copyright (C) 2000-2009, and GNU GPL'd, by Julian Seward et al.
+ LibVEX is Copyright (C) 2004-2009, and GNU GPL'd, by OpenWorks LLP.
Bug reports, feedback, admiration, abuse, etc, to: www.valgrind.org.
Modified: trunk/none/tests/cmdline2.stdout.exp
===================================================================
--- trunk/none/tests/cmdline2.stdout.exp 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/none/tests/cmdline2.stdout.exp 2009-07-29 02:36:21 UTC (rev 10652)
@@ -101,8 +101,8 @@
Extra options read from ~/.valgrindrc, $VALGRIND_OPTS, ./.valgrindrc
Nulgrind is Copyright (C) 2002-2009, and GNU GPL'd, by Nicholas Nethercote.
- Valgrind is Copyright (C) 2000-2009, and GNU GPL'd, by Julian Seward et al
- LibVEX is Copyright (C) 2004-2009, and GNU GPL'd, by OpenWorks LLP
+ Valgrind is Copyright (C) 2000-2009, and GNU GPL'd, by Julian Seward et al.
+ LibVEX is Copyright (C) 2004-2009, and GNU GPL'd, by OpenWorks LLP.
Bug reports, feedback, admiration, abuse, etc, to: www.valgrind.org.
Modified: trunk/none/tests/filter_stderr
===================================================================
--- trunk/none/tests/filter_stderr 2009-07-28 20:52:36 UTC (rev 10651)
+++ trunk/none/tests/filter_stderr 2009-07-29 02:36:21 UTC (rev 10652)
@@ -5,7 +5,7 @@
$dir/../../tests/filter_stderr_basic |
# Remove "Nulgrind, ..." line and the following copyright line.
-sed "/^Nulgrind, a binary JIT-compiler./ , /./ d" |
+sed "/^Nulgrind, the minimal Valgrind tool./ , /./ d" |
# Anonymise addresses
$dir/../../tests/filter_addresses
|
|
From: Tom H. <th...@cy...> - 2009-07-29 02:31:07
|
Nightly build on mg ( x86_64, Fedora 9 ) Started at 2009-07-29 03:10:05 BST Ended at 2009-07-29 03:30:46 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 526 tests, 1 stderr failure, 0 stdout failures, 0 post failures == helgrind/tests/tc06_two_races_xml (stderr) |