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
(9) |
2
(2) |
3
(9) |
4
(19) |
5
(4) |
6
(1) |
7
(6) |
|
8
(11) |
9
(30) |
10
(12) |
11
(25) |
12
(7) |
13
(5) |
14
|
|
15
(17) |
16
(15) |
17
(20) |
18
(17) |
19
(5) |
20
(4) |
21
|
|
22
|
23
|
24
|
25
|
26
|
27
(4) |
28
(15) |
|
29
(10) |
30
(9) |
31
(11) |
|
|
|
|
|
From: <sv...@va...> - 2011-05-17 21:35:49
|
Author: sewardj Date: 2011-05-17 22:35:41 +0100 (Tue, 17 May 2011) New Revision: 11772 Log: gdbserver: (#214909 c 91) add cleanup: line to none/tests/require-text-symbol-2.vgtest In case Valgrind terminates abnormally, then no cleanup is done. In this case, the abnormal termination is in the test which checks --require-text-symbol=:*libc.so*:doesntexist This patch adds a cleanup: line to the test. (Philippe Waroquiers, phi...@sk...) Modified: trunk/none/tests/require-text-symbol-2.vgtest Modified: trunk/none/tests/require-text-symbol-2.vgtest =================================================================== --- trunk/none/tests/require-text-symbol-2.vgtest 2011-05-17 18:14:53 UTC (rev 11771) +++ trunk/none/tests/require-text-symbol-2.vgtest 2011-05-17 21:35:41 UTC (rev 11772) @@ -1,2 +1,3 @@ prog: require-text-symbol -vgopts: -q "--require-text-symbol=:*libc.so*:doesntexist" +vgopts: -q "--require-text-symbol=:*libc.so*:doesntexist" --vgdb-prefix=./vgdb-prefix-require-text-symbol-2 +cleanup: rm ./vgdb-prefix-require-text-symbol-2* |
|
From: Christian B. <bor...@de...> - 2011-05-17 20:39:19
|
Nightly build on fedora390 ( Fedora 13/14/15 mix with gcc 3.5.3 on z196 (s390x) ) Started at 2011-05-17 22:10:01 CEST Ended at 2011-05-17 22:38:32 CEST 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 == 476 tests, 6 stderr failures, 0 stdout failures, 1 stderrB failure, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc23_bogus_condwait (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) drd/tests/tc23_bogus_condwait (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 == 473 tests, 6 stderr failures, 0 stdout failures, 1 stderrB failure, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc23_bogus_condwait (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) drd/tests/tc23_bogus_condwait (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Tue May 17 22:26:13 2011 --- new.short Tue May 17 22:38:32 2011 *************** *** 8,10 **** ! == 473 tests, 6 stderr failures, 0 stdout failures, 1 stderrB failure, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) --- 8,10 ---- ! == 476 tests, 6 stderr failures, 0 stdout failures, 1 stderrB failure, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) |
|
From: Christian B. <bor...@de...> - 2011-05-17 20:38:08
|
Nightly build on sless390 ( SUSE Linux Enterprise Server 11 SP1 gcc 4.3.4 on z196 (s390x) ) Started at 2011-05-17 22:10:01 CEST Ended at 2011-05-17 22:37:58 CEST 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 == 476 tests, 6 stderr failures, 0 stdout failures, 3 stderrB failures, 0 stdoutB failures, 0 post failures == gdbserver_tests/mcbreak (stderrB) gdbserver_tests/mcclean_after_fork (stderrB) gdbserver_tests/mssnapshot (stderrB) none/tests/faultstatus (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc23_bogus_condwait (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) drd/tests/tc23_bogus_condwait (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 == 473 tests, 6 stderr failures, 0 stdout failures, 3 stderrB failures, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcbreak (stderrB) gdbserver_tests/mcclean_after_fork (stderrB) gdbserver_tests/mssnapshot (stderrB) gdbserver_tests/nlcontrolc (stdoutB) none/tests/faultstatus (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc23_bogus_condwait (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) drd/tests/tc23_bogus_condwait (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Tue May 17 22:24:17 2011 --- new.short Tue May 17 22:37:58 2011 *************** *** 8,10 **** ! == 473 tests, 6 stderr failures, 0 stdout failures, 3 stderrB failures, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcbreak (stderrB) --- 8,10 ---- ! == 476 tests, 6 stderr failures, 0 stdout failures, 3 stderrB failures, 0 stdoutB failures, 0 post failures == gdbserver_tests/mcbreak (stderrB) *************** *** 12,14 **** gdbserver_tests/mssnapshot (stderrB) - gdbserver_tests/nlcontrolc (stdoutB) none/tests/faultstatus (stderr) --- 12,13 ---- |
|
From: Florian K. <br...@ac...> - 2011-05-17 20:28:33
|
On 05/16/2011 12:33 AM, Philippe Waroquiers wrote: > > Note that I think that the memory leak of the lr_array is solved by > the patch in comment 83 "implement delta leak reporting" of the > gdbsrv bug 214909. > I think the lr_table leak in this function is also leaked (and fixed by > the patch) > > Maybe you could look to see if BEAM could detect the lr_table leak ? > Yeah, I think that should be doable. Florian |
|
From: <sv...@va...> - 2011-05-17 18:15:01
|
Author: sewardj
Date: 2011-05-17 19:14:53 +0100 (Tue, 17 May 2011)
New Revision: 11771
Log:
gdbserver: (#214909 c 82)
ensure proper cleanup of gdbsrv FIFOs/shmem files with untraced fork/exec
* syswrap-{generic|darwin|aix5}.c : in PRE(sys_execve) : terminate gdbserver
* pub_core_gdbserver.h and m_gdbserver.c : add VG_(gdbserver_prerun_action),
factorising the actions to do by gdbserver at "startup" (i.e. a traced
fork or a traced exec).
* scheduler.c : implement startup action using VG_(gdbserver_prerun_action)
(Philippe Waroquiers, phi...@sk...)
Modified:
trunk/coregrind/m_gdbserver/m_gdbserver.c
trunk/coregrind/m_scheduler/scheduler.c
trunk/coregrind/m_syswrap/syswrap-aix5.c
trunk/coregrind/m_syswrap/syswrap-darwin.c
trunk/coregrind/m_syswrap/syswrap-generic.c
trunk/coregrind/pub_core_gdbserver.h
Modified: trunk/coregrind/m_gdbserver/m_gdbserver.c
===================================================================
--- trunk/coregrind/m_gdbserver/m_gdbserver.c 2011-05-17 17:15:07 UTC (rev 11770)
+++ trunk/coregrind/m_gdbserver/m_gdbserver.c 2011-05-17 18:14:53 UTC (rev 11771)
@@ -494,6 +494,24 @@
invalidate_if_jump_not_yet_gdbserved (VG_(get_IP) (tid), who);
}
+void VG_(gdbserver_prerun_action) (ThreadId tid)
+{
+ // Using VG_(dyn_vgdb_error) allows the user to control if gdbserver
+ // stops after a fork.
+ if (VG_(dyn_vgdb_error) == 0) {
+ /* The below call allows gdb to attach at startup
+ before the first guest instruction is executed. */
+ VG_(umsg)("(action at startup) vgdb me ... \n");
+ VG_(gdbserver)(tid);
+ } else {
+ /* User has activated gdbserver => initialize now the FIFOs
+ to let vgdb/gdb contact us either via the scheduler poll
+ mechanism or via vgdb ptrace-ing valgrind. */
+ if (VG_(gdbserver_activity) (tid))
+ VG_(gdbserver) (tid);
+ }
+}
+
/* when fork is done, various cleanup is needed in the child process.
In particular, child must have its own connection to avoid stealing
data from its parent */
@@ -521,6 +539,11 @@
vg_assert (gs_addresses == NULL);
vg_assert (gs_watches == NULL);
}
+
+
+ if (VG_(clo_trace_children)) {
+ VG_(gdbserver_prerun_action) (me);
+ }
}
/* If reason is init_reason, creates the connection resources (e.g.
Modified: trunk/coregrind/m_scheduler/scheduler.c
===================================================================
--- trunk/coregrind/m_scheduler/scheduler.c 2011-05-17 17:15:07 UTC (rev 11770)
+++ trunk/coregrind/m_scheduler/scheduler.c 2011-05-17 18:14:53 UTC (rev 11771)
@@ -1042,18 +1042,7 @@
/* As we are initializing, VG_(dyn_vgdb_error) can't have been
changed yet. */
- if (VG_(dyn_vgdb_error) == 0) {
- /* The below call allows gdb to attach at startup
- before the first guest instruction is executed. */
- VG_(umsg)("(action at startup) vgdb me ... \n");
- VG_(gdbserver)(1);
- } else {
- /* User has activated gdbserver => initialize now the FIFOs
- to let vgdb/gdb contact us either via the scheduler poll
- mechanism or via vgdb ptrace-ing valgrind. */
- if (VG_(gdbserver_activity) (1))
- VG_(gdbserver) (1);
- }
+ VG_(gdbserver_prerun_action) (1);
} else {
VG_(disable_vgdb_poll) ();
}
Modified: trunk/coregrind/m_syswrap/syswrap-aix5.c
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-aix5.c 2011-05-17 17:15:07 UTC (rev 11770)
+++ trunk/coregrind/m_syswrap/syswrap-aix5.c 2011-05-17 18:14:53 UTC (rev 11771)
@@ -45,6 +45,7 @@
#include "pub_core_xarray.h"
#include "pub_core_clientstate.h"
#include "pub_core_debuglog.h"
+#include "pub_tool_gdbserver.h" // VG_(gdbserver)
#include "pub_core_libcbase.h"
#include "pub_core_libcassert.h"
#include "pub_core_libcfile.h"
@@ -892,6 +893,15 @@
/* After this point, we can't recover if the execve fails. */
VG_(debugLog)(1, "syswrap", "Exec of %s\n", (Char*)ARG1);
+ // Terminate gdbserver if it is active.
+ if (VG_(clo_vgdb) != Vg_VgdbNo) {
+ // If the child will not be traced, we need to terminate gdbserver
+ // to cleanup the gdbserver resources (e.g. the FIFO files).
+ // If child will be traced, we also terminate gdbserver: the new
+ // Valgrind will start a fresh gdbserver after exec.
+ VG_(gdbserver) (0);
+ }
+
/* Resistance is futile. Nuke all other threads. POSIX mandates
this. (Really, nuke them all, since the new process will make
its own new thread.) */
Modified: trunk/coregrind/m_syswrap/syswrap-darwin.c
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-darwin.c 2011-05-17 17:15:07 UTC (rev 11770)
+++ trunk/coregrind/m_syswrap/syswrap-darwin.c 2011-05-17 18:14:53 UTC (rev 11771)
@@ -41,6 +41,7 @@
#include "pub_core_debuglog.h"
#include "pub_core_debuginfo.h" // VG_(di_notify_*)
#include "pub_core_transtab.h" // VG_(discard_translations)
+#include "pub_tool_gdbserver.h" // VG_(gdbserver)
#include "pub_core_libcbase.h"
#include "pub_core_libcassert.h"
#include "pub_core_libcfile.h"
@@ -2787,6 +2788,15 @@
/* Ok. So let's give it a try. */
VG_(debugLog)(1, "syswrap", "Posix_spawn of %s\n", (Char*)ARG2);
+ // Terminate gdbserver if it is active.
+ if (VG_(clo_vgdb) != Vg_VgdbNo) {
+ // If the child will not be traced, we need to terminate gdbserver
+ // to cleanup the gdbserver resources (e.g. the FIFO files).
+ // If child will be traced, we also terminate gdbserver: the new
+ // Valgrind will start a fresh gdbserver after exec.
+ VG_(gdbserver) (tid);
+ }
+
// Set up the child's exe path.
//
if (trace_this_child) {
Modified: trunk/coregrind/m_syswrap/syswrap-generic.c
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-generic.c 2011-05-17 17:15:07 UTC (rev 11770)
+++ trunk/coregrind/m_syswrap/syswrap-generic.c 2011-05-17 18:14:53 UTC (rev 11771)
@@ -43,6 +43,7 @@
#include "pub_core_clientstate.h" // VG_(brk_base), VG_(brk_limit)
#include "pub_core_debuglog.h"
#include "pub_core_errormgr.h"
+#include "pub_tool_gdbserver.h" // VG_(gdbserver)
#include "pub_core_libcbase.h"
#include "pub_core_libcassert.h"
#include "pub_core_libcfile.h"
@@ -2603,6 +2604,16 @@
/* After this point, we can't recover if the execve fails. */
VG_(debugLog)(1, "syswrap", "Exec of %s\n", (Char*)ARG1);
+
+ // Terminate gdbserver if it is active.
+ if (VG_(clo_vgdb) != Vg_VgdbNo) {
+ // If the child will not be traced, we need to terminate gdbserver
+ // to cleanup the gdbserver resources (e.g. the FIFO files).
+ // If child will be traced, we also terminate gdbserver: the new
+ // Valgrind will start a fresh gdbserver after exec.
+ VG_(gdbserver) (0);
+ }
+
/* Resistance is futile. Nuke all other threads. POSIX mandates
this. (Really, nuke them all, since the new process will make
its own new thread.) */
Modified: trunk/coregrind/pub_core_gdbserver.h
===================================================================
--- trunk/coregrind/pub_core_gdbserver.h 2011-05-17 17:15:07 UTC (rev 11770)
+++ trunk/coregrind/pub_core_gdbserver.h 2011-05-17 18:14:53 UTC (rev 11771)
@@ -32,6 +32,14 @@
#include "pub_tool_gdbserver.h"
+
+// After a fork or after an exec, call the below to (possibly) terminate
+// the previous gdbserver and then activate a new gdbserver
+// before any guest code execution, to e.g. allow the user to set
+// breakpoints before execution.
+// If VG_(clo_vgdb) == No, the below has no effect.
+void VG_(gdbserver_prerun_action) (ThreadId tid);
+
// True if there is some activity from vgdb
// If it returns True, then extern void VG_(gdbserver) can be called
// to handle this incoming vgdb request.
|
|
From: <sv...@va...> - 2011-05-17 17:15:16
|
Author: sewardj
Date: 2011-05-17 18:15:07 +0100 (Tue, 17 May 2011)
New Revision: 11770
Log:
gdbserver: misc fixes (#214909 c 77)
Fix some tests on ppc-debian6,s390x + handled Nick Nethercote, Josef
Weidendorfer comments
* improved testing & related doc
- added option --vex-iropt-precise-memory-exns=yes to mcsig(no)pass.vgtest
+ updated manual-core.xml
- cleanup some comments in *.vgtest
- modified filter_gdb and filter_memcheck_monitor to
handle specific ppc/debian6.0 mcsig(no)pass output
handle specific s390x 'missing debug info'
- added more information in README_DEVELOPPERS on how to
investigate failing gdbserver tests.
* handled Nick Nethercote comment:
Replaced kludgy ms.snapshot detailed
by ms.detailed_snaphot
Updated documentation and test.
* handled Josef Weindendorfer comments:
- do not report an error if ptrace_scope file can't be read.
Instead, a debug trace is done if -d (debug) option given
- added an option -l to give the list of active Valgrind
gdbserver. Useful a.o. to support callgrind_control.
Updated documentation
- added ref. to vgdb help in the vgdb --help message
(Philippe Waroquiers, phi...@sk...)
Modified:
trunk/coregrind/m_gdbserver/remote-utils.c
trunk/coregrind/vgdb.c
trunk/docs/xml/manual-core.xml
trunk/gdbserver_tests/README_DEVELOPPERS
trunk/gdbserver_tests/filter_gdb
trunk/gdbserver_tests/filter_memcheck_monitor
trunk/gdbserver_tests/mcbreak.vgtest
trunk/gdbserver_tests/mcinfcallRU.vgtest
trunk/gdbserver_tests/mcinfcallWSRU.vgtest
trunk/gdbserver_tests/mcsignopass.vgtest
trunk/gdbserver_tests/mcsigpass.vgtest
trunk/gdbserver_tests/mssnapshot.stderrB.exp
trunk/gdbserver_tests/mssnapshot.stdinB.gdb
trunk/gdbserver_tests/nlcontrolc.vgtest
trunk/massif/docs/ms-manual.xml
trunk/massif/ms_main.c
Modified: trunk/coregrind/m_gdbserver/remote-utils.c
===================================================================
--- trunk/coregrind/m_gdbserver/remote-utils.c 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/coregrind/m_gdbserver/remote-utils.c 2011-05-17 17:15:07 UTC (rev 11770)
@@ -121,7 +121,9 @@
o = VG_(open) (ptrace_scope_setting_file, VKI_O_RDONLY, 0);
if (sr_isError(o)) {
- sr_perror(o, "error VG_(open) %s\n", ptrace_scope_setting_file);
+ if (VG_(debugLog_getLevel)() >= 1) {
+ sr_perror(o, "error VG_(open) %s\n", ptrace_scope_setting_file);
+ }
/* can't read setting. Assuming ptrace can be called by vgdb. */
return;
}
Modified: trunk/coregrind/vgdb.c
===================================================================
--- trunk/coregrind/vgdb.c 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/coregrind/vgdb.c 2011-05-17 17:15:07 UTC (rev 11770)
@@ -1845,8 +1845,10 @@
"blocked in a system call *after* an initial successful attach\n",
ptrace_scope_setting_file);
} else if (ptrace_scope == 'X') {
- fprintf(stderr, "Could not determine ptrace scope from %s\n",
- ptrace_scope_setting_file);
+ DEBUG (1,
+ "PR_SET_PTRACER defined"
+ " but could not determine ptrace scope from %s\n",
+ ptrace_scope_setting_file);
}
if (fd >= 0)
close (fd);
@@ -1873,7 +1875,7 @@
" Only OPTION(s) can be given.\n"
"\n"
" OPTIONS are [--pid=<number>] [--vgdb-prefix=<prefix>]\n"
-" [--max-invoke-ms=<number>] [--wait=<number>] [-d] -D]\n"
+" [--max-invoke-ms=<number>] [--wait=<number>] [-d] [-D] [-l]\n"
" --pid arg must be given if multiple Valgrind gdbservers are found.\n"
" --vgdb-prefix arg must be given to both Valgrind and vgdb utility\n"
" if you want to change the default prefix for the FIFOs communication\n"
@@ -1885,13 +1887,21 @@
" is blocked in a system call).\n"
" -d arg tells to show debug info. Multiple -d args for more debug info\n"
" -D arg tells to show shared mem status and then exit.\n"
+" -l arg tells to show the list of running Valgrind gdbserver and then exit.\n"
"\n"
+" -h --help shows this message\n"
+" To get help from the Valgrind gdbserver, use vgdb help\n"
+"\n"
);
ptrace_restrictions();
}
-/* If arg_pid == -1, waits maximum check_trials seconds to discover
+/* If show_list, shows the list of Valgrind processes with gdbserver activated.
+ and then exits.
+
+ else if arg_pid == -1, waits maximum check_trials seconds to discover
a valgrind pid appearing.
+
Otherwise verify arg_pid is valid and corresponds to a Valgrind process
with gdbserver activated.
@@ -1899,7 +1909,7 @@
or exits in case of error (e.g. no pid found corresponding to arg_pid */
static
-int search_arg_pid(int arg_pid, int check_trials)
+int search_arg_pid(int arg_pid, int check_trials, Bool show_list)
{
int i;
int pid = -1;
@@ -1941,6 +1951,7 @@
/* try to find FIFOs with valid pid.
On exit of the loop, pid is set to:
+ the last pid found if show_list (or -1 if no process was listed)
-1 if no FIFOs matching a running process is found
-2 if multiple FIFOs of running processes are found
otherwise it is set to the (only) pid found that can be debugged
@@ -1980,7 +1991,10 @@
if (*wrongpid == '\0' && newpid > 0
&& kill (newpid, 0) == 0) {
nr_valid_pid++;
- if (arg_pid != -1) {
+ if (show_list) {
+ report_pid (newpid);
+ pid = newpid;
+ } else if (arg_pid != -1) {
if (arg_pid == newpid) {
pid = newpid;
}
@@ -2014,8 +2028,10 @@
free (vgdb_dir_name);
free (vgdb_format);
}
-
- if (pid == -1) {
+
+ if (show_list) {
+ exit (1);
+ } else if (pid == -1) {
if (arg_pid == -1)
fprintf (stderr, "vgdb error: no FIFO found and no pid given\n");
else
@@ -2071,12 +2087,14 @@
static
void parse_options(int argc, char** argv,
Bool *p_show_shared_mem,
+ Bool *p_show_list,
int *p_arg_pid,
int *p_check_trials,
int *p_last_command,
char *commands[])
{
Bool show_shared_mem = False;
+ Bool show_list = False;
int arg_pid = -1;
int check_trials = 1;
int last_command = -1;
@@ -2092,6 +2110,8 @@
debuglevel++;
} else if (is_opt(argv[i], "-D")) {
show_shared_mem = True;
+ } else if (is_opt(argv[i], "-l")) {
+ show_list = True;
} else if (is_opt(argv[i], "--pid=")) {
int newpid;
if (!numeric_val(argv[i], &newpid)) {
@@ -2143,12 +2163,35 @@
}
}
+
+ if (isatty(0)
+ && !show_shared_mem
+ && !show_list
+ && last_command == -1) {
+ arg_errors++;
+ fprintf (stderr,
+ "Using vgdb standalone implies to give -D or -l or a COMMAND\n");
+ }
+
+ if (show_shared_mem && show_list) {
+ arg_errors++;
+ fprintf (stderr,
+ "Can't use both -D and -l options\n");
+ }
+
+ if (show_list && arg_pid != -1) {
+ arg_errors++;
+ fprintf (stderr,
+ "Can't use both --pid and -l options\n");
+ }
+
if (arg_errors > 0) {
fprintf (stderr, "args error. Try `vgdb --help` for more information\n");
exit(1);
}
*p_show_shared_mem = show_shared_mem;
+ *p_show_list = show_list;
*p_arg_pid = arg_pid;
*p_check_trials = check_trials;
*p_last_command = last_command;
@@ -2160,6 +2203,7 @@
int pid;
Bool show_shared_mem;
+ Bool show_list;
int arg_pid;
int check_trials;
int last_command;
@@ -2167,6 +2211,7 @@
parse_options(argc, argv,
&show_shared_mem,
+ &show_list,
&arg_pid,
&check_trials,
&last_command,
@@ -2179,7 +2224,7 @@
if (max_invoke_ms > 0 || last_command == -1)
install_handlers();
- pid = search_arg_pid (arg_pid, check_trials);
+ pid = search_arg_pid (arg_pid, check_trials, show_list);
prepare_fifos_and_shared_mem(pid);
Modified: trunk/docs/xml/manual-core.xml
===================================================================
--- trunk/docs/xml/manual-core.xml 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/docs/xml/manual-core.xml 2011-05-17 17:15:07 UTC (rev 11770)
@@ -2255,7 +2255,9 @@
<para> Stack unwinding on PPC32/PPC64. </para>
<para> On PPC32/PPC64, stack unwinding for leaf functions
(i.e. functions not calling other functions) does work properly
- only with <option>--vex-iropt-precise-memory-exns=yes</option>
+ only with <option>--vex-iropt-precise-memory-exns=yes</option>.
+ You must also pass this option to have a precise stack when
+ a signal is trapped by gdb.
</para>
</listitem>
@@ -2522,6 +2524,11 @@
shared memory used by the Valgrind gdbserver. vgdb will exit after
having shown the Valgrind gdbserver shared memory state.</para>
</listitem>
+
+ <listitem>
+ <para><option>-l</option> instructs vgdb to report the list of
+ the Valgrind gdbserver processes running and then exit.</para>
+ </listitem>
</itemizedlist>
</sect1>
Modified: trunk/gdbserver_tests/README_DEVELOPPERS
===================================================================
--- trunk/gdbserver_tests/README_DEVELOPPERS 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/README_DEVELOPPERS 2011-05-17 17:15:07 UTC (rev 11770)
@@ -25,9 +25,11 @@
read/write from stdin/stdout.
The tests have been run on various platforms using gdb 7.2
-and on some platforms gdb 7.0.
+and on some platforms gdb 7.0 and 7.1.
Some gdb tests implies a gdb >= 7.2. (these are automatically disabled
if testing with a lower version).
+Test behaviour with gdb < 7.0 is unknown: some might fail,
+some might block or loop for a very long time.
Some tests implies to have a vgdb "ptrace invoker" capable.
@@ -36,12 +38,14 @@
In case of failing tests
------------------------
-gdbserver tests are often failing due to (irrelevant) differences
-depending on the gdb version and/or the OS version.
+When executed with a new gdb version and/or depending on the OS version,
+gdbserver tests might often fail due to (irrelevant) differences.
Such irrelevant differences have to be filtered by gdbserver_tests/filter_gdb.
-To report such problems, the best is to re-run the gdbserver tests
-the following way:
+You are welcome to fix such bugs by enhancing filter_gdb.
+
+Alternatively, to report such problems, the best is to re-run
+the gdbserver tests the following way:
perl tests/vg_regtest --keep-unfiltered gdbserver_tests
Then file a bug in bugzilla, giving the following information:
@@ -50,9 +54,25 @@
uname -a
cat /etc/issue
valgrind --version (and/or svn version)
- and attach a tar file containing all the *.out files in gdbserver_tests
- directory
+ and attach a tar file containing all the *.out and *.diff
+ files in gdbserver_tests directory
+If a gdbserver test fails for other reasons, you can run the test
+manually in two windows:
+ In one window, the valgrind
+ In another window, you launch gdb yourself, and you copy paste
+ the command from xxxx.stdinB.gdb. This might help to see what is
+ wrong.
+
+Another good trick is also to execute the same kind of actions
+using a gdb connected to the gdbserver part of gdb.
+You can examine what is happening by enabling the trace
+of the packets being sent using the gdb command:
+ set debug remote 1
+Note however that the packets might be different
+(e.g. the Valgrind gdbserver understands the 'P' packet,
+which might not be understood by the gdbserver of gdb).
+
Naming conventions:
-------------------
Modified: trunk/gdbserver_tests/filter_gdb
===================================================================
--- trunk/gdbserver_tests/filter_gdb 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/filter_gdb 2011-05-17 17:15:07 UTC (rev 11770)
@@ -42,7 +42,7 @@
# which registers can't be modified
# special transform for arm/ppc watchpoints which have an additional address
# at the beginning
-# special transform for backtrace of arm division by zero which gives
+# special transform for backtrace of arm or ppc division by zero which gives
# a location in the nptl lib rather than our sources (same as
# standard gdb gdbserver) gdb 7.0
# same special transform but for gdb 7.2
@@ -50,9 +50,10 @@
# a.o. produced by gdb 7.2 on arm (same with standard gdbserver)
# delete empty lines (the last line (only made of prompts) sometimes
# finishes with a new line, sometimes not ???).
-sed -e '/Remote debugging using/,/vgdb launched process attached/d' \
+sed -e '/Remote debugging using/,/vgdb launched process attached/d' \
-e 's/^\[?1034hReading symbols/Reading symbols/' \
- -e '/Missing separate debuginfos, use: debuginfo-install/d' \
+ -e '/^Missing separate debuginfo/d' \
+ -e '/^Try: zypper install -C/d' \
-e 's/\(relaying data between gdb and process \)[0-9][0-9]*/\1..../' \
-e 's/pid [0-9][0-9]*/pid ..../g' \
-e 's/Thread [0-9][0-9]*/Thread ..../g' \
@@ -69,8 +70,7 @@
-e 's/in _dl_sysinfo_int80 () from \/lib\/ld-linux.so.*/in syscall .../' \
-e 's/in _dl_sysinfo_int80 ()/in syscall .../' \
-e '/^ from \/lib\/ld-linux.so.*$/d' \
- -e 's/\(0x........\) in ?? () from \/lib\/ld-linux\.so\../\1 in syscall .../' \
- -e 's/\(0x........\) in ?? () from \/lib64\/tls\/libc\.so\../\1 in syscall .../' \
+ -e 's/\(0x........\) in ?? () from \/lib.*$/\1 in syscall .../' \
-e 's/\(0x........\) in ?? ()$/\1 in syscall .../' \
-e 's/in \(.__\)\{0,1\}select () from \/.*$/in syscall .../' \
-e '/^ from \/lib\/libc.so.*$/d' \
@@ -87,10 +87,10 @@
-e 's/\(ERROR changing register \).*$/\1 xxx regno y/' \
-e 's/0x........ in \(main (argc=1, argv=0x........) at watchpoints.c:[24][3689]\)/\1/' \
-e 's/0x........ in \(main () at clean_after_fork.c:32\)/\1/' \
- -e 's/0x........ in \*__GI_raise (sig=8)/0x........ in test4 () at faultstatus.c:120/' \
- -e 's/ at ..\/nptl\/sysdeps\/unix\/sysv\/linux\/raise.c:[0-9]*/120 volatile int v = 44\/zero();/' \
+ -e 's/^0x........ in \*__GI_raise (sig=8).*/0x........ in test4 () at faultstatus.c:120\n120 volatile int v = 44\/zero();/' \
+ -e '/ at ..\/nptl\/sysdeps\/unix\/sysv\/linux\/raise.c:[0-9]*/d' \
-e '/ in ..\/nptl\/sysdeps\/unix\/sysv\/linux\/raise.c/d' \
- -e 's/0x........ in \.\{0,1\}raise () from \/lib[0-9]\{0,2\}\/libc\.so\../0x........ in test4 () at faultstatus.c:120\n120 volatile int v = 44\/zero();'/ \
+ -e 's/^0x........ in \.\{0,1\}raise () from \/lib[0-9]\{0,2\}\/libc\.so\../0x........ in test4 () at faultstatus.c:120\n120 volatile int v = 44\/zero();'/ \
-e '/Cannot access memory at address 0x......../d' \
-e '/^$/d' |
Modified: trunk/gdbserver_tests/filter_memcheck_monitor
===================================================================
--- trunk/gdbserver_tests/filter_memcheck_monitor 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/filter_memcheck_monitor 2011-05-17 17:15:07 UTC (rev 11770)
@@ -1,6 +1,6 @@
#! /bin/sh
-# used to filter memcheck output shown by vgdb.
+# used to filter memcheck output shown by gdb/vgdb.
dir=`dirname $0`
@@ -10,7 +10,20 @@
$dir/filter_vgdb |
+
+# filter some normal error messages provided by some gdb
+#
+# gdb 7.2 sometimes tries to access address 0x0 (same as with standard gdbserver)
+#
+# filter a debian 6.0/ppc32 line
+#
+# filter some missing info msg from s390
+#
# Bypass a s390x kernel bug which makes faultstatus test3 fail. In our case, we are
# not interested in checking the si_code, but rather the signal passing
# in mcsig(no)pass
-sed -e 's/Test 3: FAIL: expected si_code==2, not 128/Test 3: PASS/'
+sed -e '/Cannot access memory at address 0x......../d' \
+ -e '/^[1-9][0-9]* \.\.\/sysdeps\/powerpc\/powerpc32\/dl-start\.S: No such file or directory\./d' \
+ -e '/^Missing separate debuginfo/d' \
+ -e '/^Try: zypper install -C/d' \
+ -e 's/Test 3: FAIL: expected si_code==2, not 128/Test 3: PASS/'
Modified: trunk/gdbserver_tests/mcbreak.vgtest
===================================================================
--- trunk/gdbserver_tests/mcbreak.vgtest 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/mcbreak.vgtest 2011-05-17 17:15:07 UTC (rev 11770)
@@ -4,11 +4,9 @@
prog: t
vgopts: --tool=memcheck --vgdb=yes --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-mcbreak
stdout_filter: filter_gdb
-#stdout_filter: /bin/cat
stderr_filter: filter_make_empty
progB: gdb
argsB: --quiet -l 60 --nx ./t
stdinB: mcbreak.stdinB.gdb
stdoutB_filter: filter_gdb
-#stdoutB_filter: /bin/cat
stderrB_filter: filter_memcheck_monitor
Modified: trunk/gdbserver_tests/mcinfcallRU.vgtest
===================================================================
--- trunk/gdbserver_tests/mcinfcallRU.vgtest 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/mcinfcallRU.vgtest 2011-05-17 17:15:07 UTC (rev 11770)
@@ -4,9 +4,7 @@
# too much dependencies to the scheduler fairness.
args: 1 0 2000000000 ------B-
vgopts: --tool=memcheck --vgdb=yes --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-mcinfcallRU
-# filter_gdb to replace pid and Thread numbers.
-# Well, the test will verify we have 4 calls (for each thread)
-# but no way to check that this is effectively in the 4 different threads.
+# filter_gdb to replace pid and Thread numbers in the output of the program:
stderr_filter: filter_gdb
# Disable on Darwin: inferior call rejected as it cannot find malloc.
prereq: test -e gdb && ../tests/os_test linux
Modified: trunk/gdbserver_tests/mcinfcallWSRU.vgtest
===================================================================
--- trunk/gdbserver_tests/mcinfcallWSRU.vgtest 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/mcinfcallWSRU.vgtest 2011-05-17 17:15:07 UTC (rev 11770)
@@ -7,7 +7,7 @@
vgopts: --tool=memcheck --vgdb=yes --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-mcinfcallWSRU
# Disable on Darwin: inferior call rejected as it cannot find malloc.
prereq: test -e gdb && ../tests/os_test linux
-# filter_gdb to replace pid and Thread numbers.
+# filter_gdb to replace pid and Thread numbers in the output of the program:
stderr_filter: filter_gdb
progB: gdb
argsB: --quiet -l 60 --nx 1>&2 ./sleepers
Modified: trunk/gdbserver_tests/mcsignopass.vgtest
===================================================================
--- trunk/gdbserver_tests/mcsignopass.vgtest 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/mcsignopass.vgtest 2011-05-17 17:15:07 UTC (rev 11770)
@@ -6,7 +6,7 @@
# are eventually passed.
prereq: test -e gdb
prog: ../none/tests/faultstatus
-vgopts: --tool=memcheck --vgdb=full --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-mcsignopass
+vgopts: --tool=memcheck --vgdb=full --vex-iropt-precise-memory-exns=yes --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-mcsignopass
stderr_filter: filter_memcheck_monitor
progB: gdb
argsB: --quiet -l 60 --nx ../none/tests/faultstatus
Modified: trunk/gdbserver_tests/mcsigpass.vgtest
===================================================================
--- trunk/gdbserver_tests/mcsigpass.vgtest 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/mcsigpass.vgtest 2011-05-17 17:15:07 UTC (rev 11770)
@@ -1,7 +1,7 @@
# test the signal handling, when signals are passed to the Valgrind guest.
prereq: test -e gdb
prog: ../none/tests/faultstatus
-vgopts: --tool=memcheck --vgdb=full --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-mcsigpass
+vgopts: --tool=memcheck --vgdb=full --vex-iropt-precise-memory-exns=yes --vgdb-error=0 --vgdb-prefix=./vgdb-prefix-mcsigpass
stderr_filter: filter_memcheck_monitor
progB: gdb
argsB: --quiet -l 60 --nx ../none/tests/faultstatus
Modified: trunk/gdbserver_tests/mssnapshot.stderrB.exp
===================================================================
--- trunk/gdbserver_tests/mssnapshot.stderrB.exp 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/mssnapshot.stderrB.exp 2011-05-17 17:15:07 UTC (rev 11770)
@@ -13,10 +13,11 @@
vg.set vgdb-error <errornr> : debug me at error >= <errornr>
massif monitor commands:
- ms.snapshot [<filename>] [detailed]
- takes a snapshot and saves it in <filename>
+ ms.snapshot [<filename>]
+ ms.detailed_snapshot [<filename>]
+ takes a snapshot (or a detailed snapshot)
+ and saves it in <filename>
default <filename> is massif.vgdb.out
- if present, detailed argument indicates to take a detailed snapshot
monitor command request to kill this process
Remote connection closed
Modified: trunk/gdbserver_tests/mssnapshot.stdinB.gdb
===================================================================
--- trunk/gdbserver_tests/mssnapshot.stdinB.gdb 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/mssnapshot.stdinB.gdb 2011-05-17 17:15:07 UTC (rev 11770)
@@ -15,7 +15,7 @@
#
# test non detailed and detailed snapshot
monitor ms.snapshot
-monitor ms.snapshot detailed
+monitor ms.detailed_snapshot
#
#
monitor vg.kill
Modified: trunk/gdbserver_tests/nlcontrolc.vgtest
===================================================================
--- trunk/gdbserver_tests/nlcontrolc.vgtest 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/gdbserver_tests/nlcontrolc.vgtest 2011-05-17 17:15:07 UTC (rev 11770)
@@ -14,7 +14,5 @@
progB: gdb
argsB: --quiet -l 60 --nx ./sleepers
stdinB: nlcontrolc.stdinB.gdb
-#stdoutB_filter: /bin/cat
stdoutB_filter: filter_gdb
-#stderrB_filter: /bin/cat
stderrB_filter: filter_make_empty
Modified: trunk/massif/docs/ms-manual.xml
===================================================================
--- trunk/massif/docs/ms-manual.xml 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/massif/docs/ms-manual.xml 2011-05-17 17:15:07 UTC (rev 11770)
@@ -866,11 +866,17 @@
<itemizedlist>
<listitem>
- <para><varname>ms.snapshot [<filename>] [detailed]</varname> requests to take
- a snapshot and save it in the given <filename> (default massif.vgdb.out).
- If present, the 'detailed' argument indicates to take a detailed snapshot.
+ <para><varname>ms.snapshot [<filename>]</varname> requests
+ to take a snapshot and save it in the given <filename>
+ (default massif.vgdb.out).
</para>
</listitem>
+ <listitem>
+ <para><varname>ms.detailed_snapshot [<filename>]</varname>
+ requests to take a detailed snapshot and save it in the given
+ <filename> (default massif.vgdb.out).
+ </para>
+ </listitem>
</itemizedlist>
</sect1>
Modified: trunk/massif/ms_main.c
===================================================================
--- trunk/massif/ms_main.c 2011-05-17 16:45:08 UTC (rev 11769)
+++ trunk/massif/ms_main.c 2011-05-17 17:15:07 UTC (rev 11770)
@@ -1982,10 +1982,11 @@
{
VG_(gdb_printf) ("\n");
VG_(gdb_printf) ("massif monitor commands:\n");
- VG_(gdb_printf) (" ms.snapshot [<filename>] [detailed]\n");
- VG_(gdb_printf) (" takes a snapshot and saves it in <filename>\n");
+ VG_(gdb_printf) (" ms.snapshot [<filename>]\n");
+ VG_(gdb_printf) (" ms.detailed_snapshot [<filename>]\n");
+ VG_(gdb_printf) (" takes a snapshot (or a detailed snapshot)\n");
+ VG_(gdb_printf) (" and saves it in <filename>\n");
VG_(gdb_printf) (" default <filename> is massif.vgdb.out\n");
- VG_(gdb_printf) (" if present, detailed argument indicates to take a detailed snapshot\n");
VG_(gdb_printf) ("\n");
}
@@ -2379,6 +2380,18 @@
VG_(free)(massif_out_file);
}
+static handle_snapshot_monitor_command (Char *filename, Bool detailed)
+{
+ Snapshot snapshot;
+
+ clear_snapshot(&snapshot, /* do_sanity_check */ False);
+ take_snapshot(&snapshot, Normal, get_time(), detailed);
+ write_snapshots_to_file ((filename == NULL) ? (Char*) "massif.vgdb.out" : filename,
+ &snapshot,
+ 1);
+ delete_snapshot(&snapshot);
+}
+
static Bool handle_gdb_monitor_command (ThreadId tid, Char *req)
{
Char* wcmd;
@@ -2388,7 +2401,7 @@
VG_(strcpy) (s, req);
wcmd = VG_(strtok_r) (s, " ", &ssaveptr);
- switch (VG_(keyword_id) ("help ms.snapshot",
+ switch (VG_(keyword_id) ("help ms.snapshot ms.detailed_snapshot",
wcmd, kwd_report_duplicated_matches)) {
case -2: /* multiple matches */
return True;
@@ -2398,31 +2411,17 @@
print_monitor_help();
return True;
case 1: { /* ms.snapshot */
- Char* kw;
- Char* filename = NULL;
- Bool detailed = False;
- Snapshot snapshot;
-
- for (kw = VG_(strtok_r) (NULL, " ", &ssaveptr);
- kw != NULL;
- kw = VG_(strtok_r) (NULL, " ", &ssaveptr)) {
- if (filename == NULL)
- filename = kw;
- else if (0 == VG_(strncmp)(kw, "detailed", VG_(strlen) (kw)))
- detailed = True;
- else {
- VG_(gdb_printf) ("invalid 2nd arg\n");
- return True;
- }
- }
- clear_snapshot(&snapshot, /* do_sanity_check */ False);
- take_snapshot(&snapshot, Normal, get_time(), detailed);
- write_snapshots_to_file ((filename == NULL) ? (Char*) "massif.vgdb.out" : filename,
- &snapshot,
- 1);
- delete_snapshot(&snapshot);
+ Char* filename;
+ filename = VG_(strtok_r) (NULL, " ", &ssaveptr);
+ handle_snapshot_monitor_command (filename, False /* detailed */);
return True;
}
+ case 2: { /* ms.detailed_snapshot */
+ Char* filename;
+ filename = VG_(strtok_r) (NULL, " ", &ssaveptr);
+ handle_snapshot_monitor_command (filename, True /* detailed */);
+ return True;
+ }
default:
tl_assert(0);
return False;
|
|
From: <sv...@va...> - 2011-05-17 16:45:15
|
Author: bart
Date: 2011-05-17 17:45:08 +0100 (Tue, 17 May 2011)
New Revision: 11769
Log:
drd/tests/pth_detached.c: eliminated thread_arg[] array and introduced PTHREAD_STACK_MIN.
Modified:
trunk/drd/tests/pth_detached.c
Modified: trunk/drd/tests/pth_detached.c
===================================================================
--- trunk/drd/tests/pth_detached.c 2011-05-17 16:35:11 UTC (rev 11768)
+++ trunk/drd/tests/pth_detached.c 2011-05-17 16:45:08 UTC (rev 11769)
@@ -1,6 +1,7 @@
/* Test whether detached threads are handled properly. */
#include <assert.h>
+#include <limits.h> /* PTHREAD_STACK_MIN */
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
@@ -37,14 +38,10 @@
{
const int count1 = argc > 1 ? atoi(argv[1]) : 100;
const int count2 = argc > 2 ? atoi(argv[2]) : 100;
- int thread_arg[count1 > count2 ? count1 : count2];
int i;
int detachstate;
pthread_attr_t attr;
- for (i = 0; i < count1 || i < count2; i++)
- thread_arg[i] = i;
-
pthread_mutex_init(&s_mutex, 0);
pthread_cond_init(&s_cond, 0);
@@ -52,13 +49,13 @@
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
assert(pthread_attr_getdetachstate(&attr, &detachstate) == 0);
assert(detachstate == PTHREAD_CREATE_DETACHED);
- pthread_attr_setstacksize(&attr, 16384);
+ pthread_attr_setstacksize(&attr, PTHREAD_STACK_MIN + 4096);
// Create count1 detached threads by setting the "detached" property via
// thread attributes.
for (i = 0; i < count1; i++)
{
pthread_t thread;
- pthread_create(&thread, &attr, thread_func1, &thread_arg[i]);
+ pthread_create(&thread, &attr, thread_func1, NULL);
}
// Create count2 detached threads by letting the threads detach themselves.
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_JOINABLE);
@@ -67,7 +64,7 @@
for (i = 0; i < count2; i++)
{
pthread_t thread;
- pthread_create(&thread, &attr, thread_func2, &thread_arg[i]);
+ pthread_create(&thread, &attr, thread_func2, NULL);
}
pthread_attr_destroy(&attr);
|
|
From: <sv...@va...> - 2011-05-17 16:35:19
|
Author: sewardj
Date: 2011-05-17 17:35:11 +0100 (Tue, 17 May 2011)
New Revision: 11768
Log:
gdbserver: Fixes for ARM-Thumb (#214909 c 76)
fix arm thumb by transforming an address to its thumb form when needed
* added a function thumb_pc transforming a pc to its thumb form if needed
(using an heuristic to guess if this is a thumb address)
* when program counter is modified by gdb, use thumb_pc
* use thumb_pc in monitor command vg.translate
(I was able to check that this improves inferior call on a small
thumb compiled executable + mcinfcallRU test) but I could not compile
all tests with thumb).
(Philippe Waroquiers, phi...@sk...)
Modified:
trunk/coregrind/m_gdbserver/server.c
trunk/coregrind/m_gdbserver/server.h
trunk/coregrind/m_gdbserver/valgrind-low-arm.c
Modified: trunk/coregrind/m_gdbserver/server.c
===================================================================
--- trunk/coregrind/m_gdbserver/server.c 2011-05-17 16:29:29 UTC (rev 11767)
+++ trunk/coregrind/m_gdbserver/server.c 2011-05-17 16:35:11 UTC (rev 11768)
@@ -294,6 +294,12 @@
valgrind_set_single_stepping(True);
// to force gdbserver instrumentation.
}
+# if defined(VGA_arm)
+ // on arm, we need to (potentially) convert this address
+ // to the thumb form.
+ address = thumb_pc (address);
+# endif
+
VG_(translate) ( 0 /* dummy ThreadId; irrelevant due to debugging*/,
address,
/*debugging*/True,
Modified: trunk/coregrind/m_gdbserver/server.h
===================================================================
--- trunk/coregrind/m_gdbserver/server.h 2011-05-17 16:29:29 UTC (rev 11767)
+++ trunk/coregrind/m_gdbserver/server.h 2011-05-17 16:35:11 UTC (rev 11768)
@@ -94,7 +94,19 @@
and does VG_(umsg). If info != NULL, info added in VG_(usmg). */
extern void reset_valgrind_sink(char* info);
+/* For ARM usage.
+ Guesses if pc is a thumb pc.
+ In this case, returns pc with the thumb bit set (bit0)
+ else just returns pc.
+
+ The guess is based on the following set of check:
+ if bit0 set => thumb
+ else if bit1 set => thumb
+ else uses the debuginfo to guess.
+ If debug info not found for this pc, assumes arm */
+extern Addr thumb_pc (Addr pc);
+
/* True if gdbserver is single stepping the valgrind process */
extern Bool valgrind_single_stepping(void);
Modified: trunk/coregrind/m_gdbserver/valgrind-low-arm.c
===================================================================
--- trunk/coregrind/m_gdbserver/valgrind-low-arm.c 2011-05-17 16:29:29 UTC (rev 11767)
+++ trunk/coregrind/m_gdbserver/valgrind-low-arm.c 2011-05-17 16:35:11 UTC (rev 11768)
@@ -31,6 +31,7 @@
#include "pub_core_threadstate.h"
#include "pub_core_transtab.h"
#include "pub_core_gdbserver.h"
+#include "pub_core_debuginfo.h"
#include "valgrind_low.h"
@@ -122,6 +123,57 @@
dlog(1, "set pc not changed %p\n", C2v (newpc));
}
+Addr thumb_pc (Addr pc)
+{
+ // If the thumb bit (bit 0) is already set, we trust it.
+ if (pc & 1) {
+ dlog (1, "%p = thumb (bit0 is set)\n", C2v (pc));
+ return pc;
+ }
+
+ // Here, bit 0 is not set.
+ // For a pc aligned on 4 bytes, we have to use the debug
+ // info to determine the thumb-ness.
+ // else (aligned on 2 bytes), we trust this is a thumb
+ // address and we set the thumb bit.
+
+ if (pc & 2) {
+ dlog (1, "bit0 not set, bit1 set => %p = thumb\n", C2v (pc));
+ return pc | 1;
+ }
+
+ // pc aligned on 4 bytes. We need to use debug info.
+ {
+ Char fnname[200]; // ??? max size
+ Addr entrypoint;
+ Addr ptoc; // unused but needed.
+ // If this is a thumb instruction, we need to ask
+ // the debug info with the bit0 set
+ // (why can't debug info do that for us ???)
+ // (why if this is a 4 bytes thumb instruction ???)
+ if (VG_(get_fnname_raw) (pc | 1, fnname, 200)) {
+ if (VG_(lookup_symbol_SLOW)( "*", fnname, &entrypoint, &ptoc )) {
+ dlog (1, "fnname %s lookupsym %p => %p %s.\n",
+ fnname, C2v(entrypoint), C2v(pc),
+ (entrypoint & 1 ? "thumb" : "arm"));
+ if (entrypoint & 1)
+ return pc | 1;
+ else
+ return pc;
+
+ } else {
+ dlog (1, "%p fnname %s lookupsym failed?. Assume arm\n",
+ C2v (pc), fnname);
+ return pc;
+ }
+ } else {
+ // Can't find function name. We assume this is arm
+ dlog (1, "%p unknown fnname?. Assume arm\n", C2v (pc));
+ return pc;
+ }
+ }
+}
+
/* store registers in the guest state (gdbserver_to_valgrind)
or fetch register from the guest state (valgrind_to_gdbserver). */
static
@@ -153,7 +205,15 @@
case 12: VG_(transfer) (&arm->guest_R12, buf, dir, size, mod); break;
case 13: VG_(transfer) (&arm->guest_R13, buf, dir, size, mod); break;
case 14: VG_(transfer) (&arm->guest_R14, buf, dir, size, mod); break;
- case 15: VG_(transfer) (&arm->guest_R15T, buf, dir, size, mod); break;
+ case 15: {
+ VG_(transfer) (&arm->guest_R15T, buf, dir, size, mod);
+ if (dir == gdbserver_to_valgrind && *mod) {
+ // If gdb is changing the PC, we have to set the thumb bit
+ // if needed.
+ arm->guest_R15T = thumb_pc(arm->guest_R15T);
+ }
+ break;
+ }
case 16:
case 17:
case 18:
|
|
From: <sv...@va...> - 2011-05-17 16:29:36
|
Author: sewardj
Date: 2011-05-17 17:29:29 +0100 (Tue, 17 May 2011)
New Revision: 11767
Log:
Better checking for command line options that should be either 'yes'
or 'no'. Fixes #269144. (a1...@pr..., Florian Krohm
<br...@ac...>)
Modified:
trunk/include/pub_tool_options.h
Modified: trunk/include/pub_tool_options.h
===================================================================
--- trunk/include/pub_tool_options.h 2011-05-17 16:19:53 UTC (rev 11766)
+++ trunk/include/pub_tool_options.h 2011-05-17 16:29:29 UTC (rev 11767)
@@ -54,6 +54,8 @@
Char* val = &(qq_arg)[ VG_(strlen)(qq_option)+1 ]; \
if VG_STREQ(val, "yes") (qq_var) = True; \
else if VG_STREQ(val, "no") (qq_var) = False; \
+ else VG_(fmsg_bad_option)(qq_arg, "Invalid boolean value '%s'" \
+ " (should be 'yes' or 'no')\n", val); \
True; \
}) \
)
|
|
From: <sv...@va...> - 2011-05-17 16:20:01
|
Author: sewardj
Date: 2011-05-17 17:19:53 +0100 (Tue, 17 May 2011)
New Revision: 11766
Log:
s390x: add test cases for STCK{,E,F} instructions. See #271779.
(Christian Borntraeger <bor...@de...> and Divya Vyas)
Added:
trunk/none/tests/s390x/stck.c
trunk/none/tests/s390x/stck.stderr.exp
trunk/none/tests/s390x/stck.stdout.exp
trunk/none/tests/s390x/stck.vgtest
trunk/none/tests/s390x/stcke.c
trunk/none/tests/s390x/stcke.stderr.exp
trunk/none/tests/s390x/stcke.stdout.exp
trunk/none/tests/s390x/stcke.vgtest
trunk/none/tests/s390x/stckf.c
trunk/none/tests/s390x/stckf.stderr.exp
trunk/none/tests/s390x/stckf.stdout.exp
trunk/none/tests/s390x/stckf.vgtest
trunk/tests/s390x_features.c
Modified:
trunk/none/tests/s390x/Makefile.am
trunk/tests/Makefile.am
Modified: trunk/none/tests/s390x/Makefile.am
===================================================================
--- trunk/none/tests/s390x/Makefile.am 2011-05-17 16:07:33 UTC (rev 11765)
+++ trunk/none/tests/s390x/Makefile.am 2011-05-17 16:19:53 UTC (rev 11766)
@@ -5,7 +5,7 @@
INSN_TESTS = clc clcle cvb cvd icm lpr tcxb lam_stam xc mvst add sub mul \
and or xor insert div srst fold_And16 flogr sub_EI add_EI \
and_EI or_EI xor_EI insert_EI mul_GE add_GE condloadstore \
- op_exception fgx
+ op_exception fgx stck stckf stcke
check_PROGRAMS = $(INSN_TESTS) \
ex_sig \
Added: trunk/none/tests/s390x/stck.c
===================================================================
--- trunk/none/tests/s390x/stck.c (rev 0)
+++ trunk/none/tests/s390x/stck.c 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1,41 @@
+#include<stdio.h>
+#include<time.h>
+#include<stdlib.h>
+#include<unistd.h>
+
+int stck(unsigned long *addr)
+{
+ int cc;
+ asm volatile ( "stck %0\n"
+ "ipm %1\n"
+ "srl %1,28\n"
+ :"=Q" (*addr), "=d"(cc)::"memory", "cc");
+ return cc;
+}
+
+unsigned long clockticks_in_msec(unsigned long b, unsigned long a)
+{
+ return (b - a) / 4096000UL;
+}
+
+int main()
+{
+
+ int cc;
+ unsigned long start, end, diff;
+
+ cc = stck(&start);
+ if (cc)
+ printf("cc != 0!\n");
+ sleep(1);
+ cc = stck(&end);
+ if (cc)
+ printf("cc != 0!\n");
+ diff = clockticks_in_msec(end, start);
+ if (diff >= 1000 && diff < 1500)
+ printf("OK.....Testcase passed\n");
+ else
+ printf("FAILED.....Testcase failed\n");
+ return 0;
+
+}
Added: trunk/none/tests/s390x/stck.stderr.exp
===================================================================
--- trunk/none/tests/s390x/stck.stderr.exp (rev 0)
+++ trunk/none/tests/s390x/stck.stderr.exp 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1,2 @@
+
+
Added: trunk/none/tests/s390x/stck.stdout.exp
===================================================================
--- trunk/none/tests/s390x/stck.stdout.exp (rev 0)
+++ trunk/none/tests/s390x/stck.stdout.exp 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1 @@
+OK.....Testcase passed
Added: trunk/none/tests/s390x/stck.vgtest
===================================================================
--- trunk/none/tests/s390x/stck.vgtest (rev 0)
+++ trunk/none/tests/s390x/stck.vgtest 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1 @@
+prog:stck
Added: trunk/none/tests/s390x/stcke.c
===================================================================
--- trunk/none/tests/s390x/stcke.c (rev 0)
+++ trunk/none/tests/s390x/stcke.c 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1,56 @@
+#include <stdio.h>
+#include<stdlib.h>
+#include<unistd.h>
+
+union stcke {
+ unsigned long buffer[2];
+ struct reader {
+ char pad;
+ unsigned long long time;
+ int time2;
+ short program;
+ } __attribute__ ((packed)) reader;
+};
+
+int stcke(unsigned long *addr)
+{
+
+ int cc;
+ asm volatile ( "stcke %0\n"
+ "ipm %1\n"
+ "srl %1, 28\n"
+ :"+Q" (*addr), "=d"(cc)::"cc");
+
+ return cc;
+}
+
+unsigned long clockticks_in_msec(unsigned long b, unsigned long a)
+{
+ return (b -a ) / 4096000UL;
+}
+
+int main()
+{
+ union stcke start, end;
+ int cc;
+
+ cc = stcke(start.buffer);
+ if (cc)
+ printf("cc != 0!\n");
+
+ sleep(1);
+ cc = stcke(end.buffer);
+ if (cc)
+ printf("cc != 0!\n");
+
+ unsigned long c = clockticks_in_msec(end.reader.time,
+ start.reader.time);
+
+ if (c >= 1000 && c < 1500)
+ printf("OK.....Testcase passed\n");
+ else
+ printf("FAILED.....Testcase failed\n");
+
+ return 0;
+
+}
Added: trunk/none/tests/s390x/stcke.stderr.exp
===================================================================
--- trunk/none/tests/s390x/stcke.stderr.exp (rev 0)
+++ trunk/none/tests/s390x/stcke.stderr.exp 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1,2 @@
+
+
Added: trunk/none/tests/s390x/stcke.stdout.exp
===================================================================
--- trunk/none/tests/s390x/stcke.stdout.exp (rev 0)
+++ trunk/none/tests/s390x/stcke.stdout.exp 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1 @@
+OK.....Testcase passed
Added: trunk/none/tests/s390x/stcke.vgtest
===================================================================
--- trunk/none/tests/s390x/stcke.vgtest (rev 0)
+++ trunk/none/tests/s390x/stcke.vgtest 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1 @@
+prog:stcke
Added: trunk/none/tests/s390x/stckf.c
===================================================================
--- trunk/none/tests/s390x/stckf.c (rev 0)
+++ trunk/none/tests/s390x/stckf.c 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1,42 @@
+#include<stdio.h>
+#include<time.h>
+#include<stdlib.h>
+#include<unistd.h>
+
+int stckf(unsigned long *addr)
+{
+ int cc;
+ asm volatile ( ".insn s,0xb27c0000,%0\n"
+ "ipm %1\n"
+ "srl %1,28\n"
+ :"=Q" (*addr), "=d"(cc)::"memory", "cc");
+ return cc;
+}
+
+unsigned long clockticks_in_msec(unsigned long b, unsigned long a)
+{
+ return (b - a) / 4096000UL;
+}
+
+int main()
+{
+
+ int cc;
+ unsigned long start, end, diff;
+
+ cc = stckf(&start);
+ if (cc)
+ printf("cc != 0!\n");
+ sleep(1);
+ cc = stckf(&end);
+ if (cc)
+ printf("cc != 0!\n");
+
+ diff = clockticks_in_msec(end, start);
+ if (diff >= 1000 && diff < 1500)
+ printf("OK.....Testcase passed\n");
+ else
+ printf("FAILED.....Testcase failed\n");
+ return 0;
+
+}
Added: trunk/none/tests/s390x/stckf.stderr.exp
===================================================================
--- trunk/none/tests/s390x/stckf.stderr.exp (rev 0)
+++ trunk/none/tests/s390x/stckf.stderr.exp 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1,2 @@
+
+
Added: trunk/none/tests/s390x/stckf.stdout.exp
===================================================================
--- trunk/none/tests/s390x/stckf.stdout.exp (rev 0)
+++ trunk/none/tests/s390x/stckf.stdout.exp 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1 @@
+OK.....Testcase passed
Added: trunk/none/tests/s390x/stckf.vgtest
===================================================================
--- trunk/none/tests/s390x/stckf.vgtest (rev 0)
+++ trunk/none/tests/s390x/stckf.vgtest 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1,2 @@
+prog:stckf
+prereq: ../../../tests/s390x_features s390x-stckf
Modified: trunk/tests/Makefile.am
===================================================================
--- trunk/tests/Makefile.am 2011-05-17 16:07:33 UTC (rev 11765)
+++ trunk/tests/Makefile.am 2011-05-17 16:19:53 UTC (rev 11766)
@@ -21,7 +21,8 @@
arch_test \
os_test \
true \
- x86_amd64_features
+ x86_amd64_features \
+ s390x_features
AM_CFLAGS += $(AM_FLAG_M3264_PRI)
AM_CXXFLAGS += $(AM_FLAG_M3264_PRI)
Added: trunk/tests/s390x_features.c
===================================================================
--- trunk/tests/s390x_features.c (rev 0)
+++ trunk/tests/s390x_features.c 2011-05-17 16:19:53 UTC (rev 11766)
@@ -0,0 +1,93 @@
+#include <setjmp.h>
+#include <signal.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <assert.h>
+
+// This file determines s390x features a processor supports.
+//
+// We return:
+// - 0 if the machine matches the asked-for feature.
+// - 1 if the machine does not.
+// - 2 if the asked-for feature isn't recognised (this will be the case for
+// any feature if run on a non-s390x machine).
+// - 3 if there was a usage error (it also prints an error message).
+
+jmp_buf env;
+
+#if defined(VGA_s390x)
+
+void handle_sigill(int signum)
+{
+ longjmp(env, 1);
+}
+
+unsigned long long stfle(void)
+{
+
+ unsigned long long ret;
+
+ signal(SIGILL, handle_sigill);
+ if (setjmp(env)) {
+ /* stfle not available: assume no facilities */
+ return 0;
+ } else {
+ asm volatile("lghi 0, 0\n"
+ ".insn s,0xb2b00000,%0\n" /* stfle */
+ : "=Q" (ret)::"0", "cc");
+ return ret;
+ }
+}
+
+static int go(char* cpu)
+{
+ unsigned long long facilities;
+ unsigned long long match;
+
+ facilities = stfle();
+
+ if (strcmp(cpu, "s390x-zarch") == 0 ) {
+ match = (facilities & (1ULL << 62) && (facilities & (1ULL << 61)));
+ } else if (strcmp(cpu, "s390x-n3") == 0 ) {
+ match = (facilities & (1ULL << 63));
+ } else if (strcmp(cpu, "s390x-stfle") == 0 ) {
+ match = (facilities & (1ULL << 56));
+ } else if (strcmp(cpu, "s390x-ldisp") == 0 ) {
+ match = (facilities & (1ULL << 45) && (facilities & (1ULL << 44)));
+ } else if (strcmp(cpu, "s390x-eimm") == 0 ) {
+ match = (facilities & (1ULL << 42));
+ } else if (strcmp(cpu, "s390x-stckf") == 0 ) {
+ match = (facilities & (1ULL << 38));
+ } else if (strcmp(cpu, "s390x-genins") == 0 ) {
+ match = (facilities & (1ULL << 29));
+ } else if (strcmp(cpu, "s390x-exrl") == 0 ) {
+ match = (facilities & (1ULL << 28));
+ } else {
+ return 2; // Unrecognised feature.
+ }
+
+ return match == 0;
+}
+
+#else
+
+static int go(char* cpu)
+{
+ return 2; // Feature not recognised (non-s390x machine!)
+}
+
+#endif
+
+
+//---------------------------------------------------------------------------
+// main
+//---------------------------------------------------------------------------
+int main(int argc, char **argv)
+{
+ if ( argc != 2 ) {
+ fprintf( stderr, "usage: s390x_features <feature>\n" );
+ exit(3); // Usage error.
+ }
+ return go(argv[1]);
+}
|
|
From: <sv...@va...> - 2011-05-17 16:18:43
|
Author: sewardj
Date: 2011-05-17 17:18:36 +0100 (Tue, 17 May 2011)
New Revision: 2152
Log:
s390x: provide clock instructions like STCK
s390x provides user space accessible instructions to get the HW time (e.g. via
store clock STCK). while userspace programs should use gettimeofday and friends
to cope with ntp/system time etc, a lot of programs still make use of STCK.
valgrind should implement these instruction.
(Christian Borntraeger <bor...@de...> and Divya Vyas)
Modified:
trunk/priv/guest_s390_defs.h
trunk/priv/guest_s390_helpers.c
trunk/priv/guest_s390_toIR.c
Modified: trunk/priv/guest_s390_defs.h
===================================================================
--- trunk/priv/guest_s390_defs.h 2011-05-11 14:17:35 UTC (rev 2151)
+++ trunk/priv/guest_s390_defs.h 2011-05-17 16:18:36 UTC (rev 2152)
@@ -80,6 +80,9 @@
/*--- Dirty Helper functions. ---*/
/*------------------------------------------------------------*/
void s390x_dirtyhelper_EX(ULong torun);
+ULong s390x_dirtyhelper_STCK(ULong *addr);
+ULong s390x_dirtyhelper_STCKF(ULong *addr);
+ULong s390x_dirtyhelper_STCKE(ULong *addr);
/*------------------------------------------------------------*/
/*--- IR generators for special opcodes. ---*/
Modified: trunk/priv/guest_s390_helpers.c
===================================================================
--- trunk/priv/guest_s390_helpers.c 2011-05-11 14:17:35 UTC (rev 2151)
+++ trunk/priv/guest_s390_helpers.c 2011-05-17 16:18:36 UTC (rev 2152)
@@ -234,7 +234,50 @@
last_execute_target = torun;
}
+
/*------------------------------------------------------------*/
+/*--- Dirty helper for Clock instructions ---*/
+/*------------------------------------------------------------*/
+#if defined(VGA_s390x)
+ULong s390x_dirtyhelper_STCK(ULong *addr)
+{
+ int cc;
+
+ asm volatile("stck %0\n"
+ "ipm %1\n"
+ "srl %1,28\n"
+ : "+Q" (*addr), "=d" (cc) : : "cc");
+ return cc;
+}
+
+ULong s390x_dirtyhelper_STCKE(ULong *addr)
+{
+ int cc;
+
+ asm volatile("stcke %0\n"
+ "ipm %1\n"
+ "srl %1,28\n"
+ : "+Q" (*addr), "=d" (cc) : : "cc");
+ return cc;
+}
+
+ULong s390x_dirtyhelper_STCKF(ULong *addr)
+{
+ int cc;
+
+ asm volatile(".insn s,0xb27c0000,%0\n"
+ "ipm %1\n"
+ "srl %1,28\n"
+ : "+Q" (*addr), "=d" (cc) : : "cc");
+ return cc;
+}
+#else
+ULong s390x_dirtyhelper_STCK(ULong *addr) {return 3;}
+ULong s390x_dirtyhelper_STCKF(ULong *addr) {return 3;}
+ULong s390x_dirtyhelper_STCKE(ULong *addr) {return 3;}
+#endif /* VGA_s390x */
+
+/*------------------------------------------------------------*/
/*--- Helper for condition code. ---*/
/*------------------------------------------------------------*/
Modified: trunk/priv/guest_s390_toIR.c
===================================================================
--- trunk/priv/guest_s390_toIR.c 2011-05-11 14:17:35 UTC (rev 2151)
+++ trunk/priv/guest_s390_toIR.c 2011-05-17 16:18:36 UTC (rev 2152)
@@ -10498,6 +10498,60 @@
return "flogr";
}
+static HChar *
+s390_irgen_STCK(IRTemp op2addr)
+{
+ IRDirty *d;
+ IRTemp cc = newTemp(Ity_I64);
+
+ d = unsafeIRDirty_1_N(cc, 0, "s390x_dirtyhelper_STCK",
+ &s390x_dirtyhelper_STCK,
+ mkIRExprVec_1(mkexpr(op2addr)));
+ d->mFx = Ifx_Write;
+ d->mAddr = mkexpr(op2addr);
+ d->mSize = 8;
+ stmt(IRStmt_Dirty(d));
+ s390_cc_thunk_fill(mkU64(S390_CC_OP_SET),
+ mkexpr(cc), mkU64(0), mkU64(0));
+ return "stck";
+}
+
+static HChar *
+s390_irgen_STCKF(IRTemp op2addr)
+{
+ IRDirty *d;
+ IRTemp cc = newTemp(Ity_I64);
+
+ d = unsafeIRDirty_1_N(cc, 0, "s390x_dirtyhelper_STCKF",
+ &s390x_dirtyhelper_STCKF,
+ mkIRExprVec_1(mkexpr(op2addr)));
+ d->mFx = Ifx_Write;
+ d->mAddr = mkexpr(op2addr);
+ d->mSize = 8;
+ stmt(IRStmt_Dirty(d));
+ s390_cc_thunk_fill(mkU64(S390_CC_OP_SET),
+ mkexpr(cc), mkU64(0), mkU64(0));
+ return "stckf";
+}
+
+static HChar *
+s390_irgen_STCKE(IRTemp op2addr)
+{
+ IRDirty *d;
+ IRTemp cc = newTemp(Ity_I64);
+
+ d = unsafeIRDirty_1_N(cc, 0, "s390x_dirtyhelper_STCKE",
+ &s390x_dirtyhelper_STCKE,
+ mkIRExprVec_1(mkexpr(op2addr)));
+ d->mFx = Ifx_Write;
+ d->mAddr = mkexpr(op2addr);
+ d->mSize = 16;
+ stmt(IRStmt_Dirty(d));
+ s390_cc_thunk_fill(mkU64(S390_CC_OP_SET),
+ mkexpr(cc), mkU64(0), mkU64(0));
+ return "stcke";
+}
+
/*------------------------------------------------------------*/
/*--- Build IR for special instructions ---*/
/*------------------------------------------------------------*/
@@ -10844,7 +10898,7 @@
goto ok;
case 0xb202: /* STIDP */ goto unimplemented;
case 0xb204: /* SCK */ goto unimplemented;
- case 0xb205: /* STCK */ goto unimplemented;
+ case 0xb205: s390_format_S_RD(s390_irgen_STCK, ovl.fmt.S.b2, ovl.fmt.S.d2);goto ok;
case 0xb206: /* SCKC */ goto unimplemented;
case 0xb207: /* STCKC */ goto unimplemented;
case 0xb208: /* SPT */ goto unimplemented;
@@ -10921,9 +10975,9 @@
case 0xb274: /* SIGA */ goto unimplemented;
case 0xb276: /* XSCH */ goto unimplemented;
case 0xb277: /* RP */ goto unimplemented;
- case 0xb278: /* STCKE */ goto unimplemented;
+ case 0xb278: s390_format_S_RD(s390_irgen_STCKE, ovl.fmt.S.b2, ovl.fmt.S.d2);goto ok;
case 0xb279: /* SACF */ goto unimplemented;
- case 0xb27c: /* STCKF */ goto unimplemented;
+ case 0xb27c: s390_format_S_RD(s390_irgen_STCKF, ovl.fmt.S.b2, ovl.fmt.S.d2);goto ok;
case 0xb27d: /* STSI */ goto unimplemented;
case 0xb299: s390_format_S_RD(s390_irgen_SRNM, ovl.fmt.S.b2, ovl.fmt.S.d2);
goto ok;
|
|
From: <sv...@va...> - 2011-05-17 16:07:41
|
Author: sewardj
Date: 2011-05-17 17:07:33 +0100 (Tue, 17 May 2011)
New Revision: 11765
Log:
Enable sys_pwrite64 on ppc64-linux. Fixes #272955.
(Maynard Johnson, may...@us...)
Modified:
trunk/coregrind/m_syswrap/syswrap-ppc64-linux.c
Modified: trunk/coregrind/m_syswrap/syswrap-ppc64-linux.c
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-ppc64-linux.c 2011-05-17 15:54:31 UTC (rev 11764)
+++ trunk/coregrind/m_syswrap/syswrap-ppc64-linux.c 2011-05-17 16:07:33 UTC (rev 11765)
@@ -1380,7 +1380,7 @@
// _____(__NR_rt_sigsuspend, sys_rt_sigsuspend), // 178
GENXY(__NR_pread64, sys_pread64), // 179
-// _____(__NR_pwrite64, sys_pwrite64), // 180
+ GENX_(__NR_pwrite64, sys_pwrite64), // 180
GENX_(__NR_chown, sys_chown), // 181
GENXY(__NR_getcwd, sys_getcwd), // 182
LINXY(__NR_capget, sys_capget), // 183
|
|
From: <sv...@va...> - 2011-05-17 15:54:38
|
Author: sewardj Date: 2011-05-17 16:54:31 +0100 (Tue, 17 May 2011) New Revision: 11764 Log: Add entry w.r.t. the s390x port. (Florian Krohm <br...@ac...> and Christian Borntraeger <bor...@de...>) Modified: trunk/NEWS Modified: trunk/NEWS =================================================================== --- trunk/NEWS 2011-05-17 15:52:28 UTC (rev 11763) +++ trunk/NEWS 2011-05-17 15:54:31 UTC (rev 11764) @@ -5,7 +5,16 @@ - Further reduction in overheads caused by --smc-check=all, especially on 64-bit targets. +* IBM z/Architecture (s390x) running Linux + Valgrind can analyse 64-bit programs running on z/Architecture. + Most user space instructions up to and including z10 are supported. + Valgrind has been tested extensively on z9, z10, and z196 machines + running SLES 10/11, RedHat 5/6m, and Fedora. The Memcheck and Massif + tools are known to work well. Callgrind, Helgrind, and DRD work + reasonably well on z9 and later models. See README.s390 for more + details. + Release 3.6.1 (16 February 2011) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3.6.1 is a bug fix release. It adds support for some SSE4 |
|
From: <sv...@va...> - 2011-05-17 15:52:38
|
Author: sewardj
Date: 2011-05-17 16:52:28 +0100 (Tue, 17 May 2011)
New Revision: 11763
Log:
Update expected outputs.
Modified:
trunk/exp-sgcheck/tests/bad_percentify.stderr.exp-glibc28-amd64
trunk/exp-sgcheck/tests/filter_stderr
trunk/exp-sgcheck/tests/globalerr.stderr.exp-glibc28-amd64
trunk/exp-sgcheck/tests/hackedbz2.stderr.exp-glibc28-amd64
trunk/exp-sgcheck/tests/hsg.stderr.exp
trunk/exp-sgcheck/tests/preen_invars.stderr.exp-glibc28-amd64
trunk/exp-sgcheck/tests/stackerr.stderr.exp-glibc28-amd64
Modified: trunk/exp-sgcheck/tests/bad_percentify.stderr.exp-glibc28-amd64
===================================================================
--- trunk/exp-sgcheck/tests/bad_percentify.stderr.exp-glibc28-amd64 2011-05-17 15:36:01 UTC (rev 11762)
+++ trunk/exp-sgcheck/tests/bad_percentify.stderr.exp-glibc28-amd64 2011-05-17 15:52:28 UTC (rev 11763)
@@ -1,4 +1,3 @@
-exp-sgcheck, a stack and global array overrun detector
Invalid read of size 1
at 0x........: local_strlen (bad_percentify.c:138)
Modified: trunk/exp-sgcheck/tests/filter_stderr
===================================================================
--- trunk/exp-sgcheck/tests/filter_stderr 2011-05-17 15:36:01 UTC (rev 11762)
+++ trunk/exp-sgcheck/tests/filter_stderr 2011-05-17 15:52:28 UTC (rev 11763)
@@ -16,7 +16,7 @@
# Remove preambly stuff; also postambly stuff
sed \
--e "/^exp-ptrcheck, a heap, stack and global array overrun detector$/d" \
+-e "/^exp-sgcheck, a stack and global array overrun detector$/d" \
-e "/^NOTE: This is an Experimental-Class Valgrind Tool$/d" \
-e "/^Copyright (C) 2003-201., and GNU GPL'd, by OpenWorks Ltd et al.$/d" \
-e "/^For counts of detected and suppressed errors, rerun with: -v$/d" |
Modified: trunk/exp-sgcheck/tests/globalerr.stderr.exp-glibc28-amd64
===================================================================
--- trunk/exp-sgcheck/tests/globalerr.stderr.exp-glibc28-amd64 2011-05-17 15:36:01 UTC (rev 11762)
+++ trunk/exp-sgcheck/tests/globalerr.stderr.exp-glibc28-amd64 2011-05-17 15:52:28 UTC (rev 11763)
@@ -2,14 +2,16 @@
Invalid read of size 2
at 0x........: main (globalerr.c:12)
Address 0x........ expected vs actual:
- Expected: global array "a" in object with soname "NONE"
+ Expected: global array "a" of size 14 in object with soname "NONE"
Actual: unknown
+ Actual: is 0 after Expected
Invalid read of size 2
at 0x........: main (globalerr.c:12)
Address 0x........ expected vs actual:
- Expected: global array "b" in object with soname "NONE"
+ Expected: global array "b" of size 14 in object with soname "NONE"
Actual: unknown
+ Actual: is 0 after Expected
ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
Modified: trunk/exp-sgcheck/tests/hackedbz2.stderr.exp-glibc28-amd64
===================================================================
--- trunk/exp-sgcheck/tests/hackedbz2.stderr.exp-glibc28-amd64 2011-05-17 15:36:01 UTC (rev 11762)
+++ trunk/exp-sgcheck/tests/hackedbz2.stderr.exp-glibc28-amd64 2011-05-17 15:52:28 UTC (rev 11763)
@@ -9,8 +9,9 @@
by 0x........: BZ2_bzBuffToBuffCompress (hackedbz2.c:5638)
by 0x........: main (hackedbz2.c:6484)
Address 0x........ expected vs actual:
- Expected: global array "myprintf_buf" in object with soname "NONE"
+ Expected: global array "myprintf_buf" of size 70 in object with soname "NONE"
Actual: unknown
+ Actual: is 0 after Expected
ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
Modified: trunk/exp-sgcheck/tests/hsg.stderr.exp
===================================================================
--- trunk/exp-sgcheck/tests/hsg.stderr.exp 2011-05-17 15:36:01 UTC (rev 11762)
+++ trunk/exp-sgcheck/tests/hsg.stderr.exp 2011-05-17 15:52:28 UTC (rev 11763)
@@ -3,7 +3,7 @@
<valgrindoutput>
<protocolversion>4</protocolversion>
-<protocoltool>exp-ptrcheck</protocoltool>
+<protocoltool>exp-sgcheck</protocoltool>
<preamble>
<line>...</line>
@@ -15,7 +15,7 @@
<pid>...</pid>
<ppid>...</ppid>
-<tool>exp-ptrcheck</tool>
+<tool>exp-sgcheck</tool>
<args>
<vargv>...</vargv>
@@ -53,7 +53,7 @@
</frame>
</stack>
<auxwhat>Address 0x........ expected vs actual:</auxwhat>
- <auxwhat>Expected: global array "ga" in object with soname "NONE"</auxwhat>
+ <auxwhat>Expected: global array "ga" of size 200 in object with soname "NONE"</auxwhat>
<auxwhat>Actual: unknown</auxwhat>
</error>
@@ -89,117 +89,11 @@
</frame>
</stack>
<auxwhat>Address 0x........ expected vs actual:</auxwhat>
- <auxwhat>Expected: stack array "la" in frame 1 back from here</auxwhat>
+ <auxwhat>Expected: stack array "la" of size 200 in frame 1 back from here</auxwhat>
<auxwhat>Actual: unknown</auxwhat>
</error>
-<error>
- <unique>0x........</unique>
- <tid>...</tid>
- <kind>Heap</kind>
- <what>Invalid read of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>do_stupid_malloc_stuff</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>main</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 1 bytes before the accessing pointer's</auxwhat>
- <auxwhat>legitimate range, a block of size 100 alloc'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>malloc</fn>
- <dir>...</dir>
- <file>vg_replace_malloc.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>do_stupid_malloc_stuff</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>main</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- </stack>
-</error>
-<error>
- <unique>0x........</unique>
- <tid>...</tid>
- <kind>Heap</kind>
- <what>Invalid read of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>do_stupid_malloc_stuff</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>main</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 50 bytes inside the accessing pointer's</auxwhat>
- <auxwhat>once-legitimate range, a block of size 100 free'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>free</fn>
- <dir>...</dir>
- <file>vg_replace_malloc.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>do_stupid_malloc_stuff</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>main</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- </stack>
-</error>
-
-
<status>
<state>FINISHED</state>
<time>...</time>
@@ -214,14 +108,6 @@
<count>...</count>
<unique>0x........</unique>
</pair>
- <pair>
- <count>...</count>
- <unique>0x........</unique>
- </pair>
- <pair>
- <count>...</count>
- <unique>0x........</unique>
- </pair>
</errorcounts>
<suppcounts>...</suppcounts>
Modified: trunk/exp-sgcheck/tests/preen_invars.stderr.exp-glibc28-amd64
===================================================================
--- trunk/exp-sgcheck/tests/preen_invars.stderr.exp-glibc28-amd64 2011-05-17 15:36:01 UTC (rev 11762)
+++ trunk/exp-sgcheck/tests/preen_invars.stderr.exp-glibc28-amd64 2011-05-17 15:52:28 UTC (rev 11763)
@@ -3,7 +3,7 @@
at 0x........: main (preen_invars.c:22)
Address 0x........ expected vs actual:
Expected: unknown
- Actual: global array "im_a_global_arr" in object with soname "preen_invars_so"
+ Actual: global array "im_a_global_arr" of size 10 in object with soname "preen_invars_so"
ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
Modified: trunk/exp-sgcheck/tests/stackerr.stderr.exp-glibc28-amd64
===================================================================
--- trunk/exp-sgcheck/tests/stackerr.stderr.exp-glibc28-amd64 2011-05-17 15:36:01 UTC (rev 11762)
+++ trunk/exp-sgcheck/tests/stackerr.stderr.exp-glibc28-amd64 2011-05-17 15:52:28 UTC (rev 11763)
@@ -4,14 +4,16 @@
by 0x........: bar (stackerr.c:32)
by 0x........: main (stackerr.c:41)
Address 0x........ expected vs actual:
- Expected: stack array "a" in frame 2 back from here
+ Expected: stack array "a" of size 56 in frame 2 back from here
Actual: unknown
+ Actual: is 0 after Expected
Invalid write of size 8
at 0x........: main (stackerr.c:44)
Address 0x........ expected vs actual:
- Expected: stack array "a" in this frame
+ Expected: stack array "a" of size 56 in this frame
Actual: unknown
+ Actual: is 0 after Expected
Invalid write of size 1
at 0x........: _IO_default_xsputn (in /...libc...)
@@ -20,8 +22,9 @@
by 0x........: ...
by 0x........: main (stackerr.c:49)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 4 back from here
+ Expected: stack array "buf" of size 8 in frame 4 back from here
Actual: unknown
+ Actual: is 0 after Expected
ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
|
|
From: <sv...@va...> - 2011-05-17 15:36:10
|
Author: sewardj
Date: 2011-05-17 16:36:01 +0100 (Tue, 17 May 2011)
New Revision: 11762
Log:
Make this test much more independent of glibc, and update outputs
accordingly.
Modified:
trunk/exp-sgcheck/tests/bad_percentify.c
trunk/exp-sgcheck/tests/bad_percentify.stderr.exp-glibc28-amd64
trunk/exp-sgcheck/tests/bad_percentify.stdout.exp
Modified: trunk/exp-sgcheck/tests/bad_percentify.c
===================================================================
--- trunk/exp-sgcheck/tests/bad_percentify.c 2011-05-16 11:49:40 UTC (rev 11761)
+++ trunk/exp-sgcheck/tests/bad_percentify.c 2011-05-17 15:36:01 UTC (rev 11762)
@@ -4,16 +4,548 @@
is still in Valgrind. */
#include <stdio.h>
-#include <stdlib.h>
#include <assert.h>
-#include <string.h>
+#include <stdarg.h>
typedef unsigned long long int ULong;
+typedef signed long long int Long;
typedef unsigned int UInt;
typedef signed int Int;
-typedef char Char;
+typedef signed char Char;
+typedef char HChar;
+typedef unsigned long UWord;
+typedef signed long Word;
+
+
+typedef unsigned char Bool;
+#define True ((Bool)1)
+#define False ((Bool)0)
+
+#define VG_(_str) VG_##_str
+
+
/* ---------------------------------------------------------------------
+ vg_sprintf, copied from m_libcprint.c
+ ------------------------------------------------------------------ */
+UInt
+VG_(debugLog_vprintf) (
+ void(*send)(HChar,void*),
+ void* send_arg2,
+ const HChar* format,
+ va_list vargs
+ );
+
+/* ---------------------------------------------------------------------
+ printf() and friends
+ ------------------------------------------------------------------ */
+typedef
+ struct { Int fd; Bool is_socket; }
+ OutputSink;
+
+
+OutputSink VG_(log_output_sink) = { 2, False }; /* 2 = stderr */
+
+/* Do the low-level send of a message to the logging sink. */
+static
+void send_bytes_to_logging_sink ( OutputSink* sink, HChar* msg, Int nbytes )
+{
+ fwrite(msg, 1, nbytes, stdout);
+ fflush(stdout);
+}
+
+
+/* --------- printf --------- */
+
+typedef
+ struct {
+ HChar buf[512];
+ Int buf_used;
+ OutputSink* sink;
+ }
+ printf_buf_t;
+
+// Adds a single char to the buffer. When the buffer gets sufficiently
+// full, we write its contents to the logging sink.
+static void add_to__printf_buf ( HChar c, void *p )
+{
+ printf_buf_t *b = (printf_buf_t *)p;
+
+ if (b->buf_used > sizeof(b->buf) - 2 ) {
+ send_bytes_to_logging_sink( b->sink, b->buf, b->buf_used );
+ b->buf_used = 0;
+ }
+ b->buf[b->buf_used++] = c;
+ b->buf[b->buf_used] = 0;
+ assert(b->buf_used < sizeof(b->buf));
+}
+
+__attribute__((noinline))
+static UInt vprintf_to_buf ( printf_buf_t* b,
+ const HChar *format, va_list vargs )
+{
+ UInt ret = 0;
+ if (b->sink->fd >= 0 || b->sink->fd == -2) {
+ ret = VG_(debugLog_vprintf)
+ ( add_to__printf_buf, b, format, vargs );
+ }
+ return ret;
+}
+
+__attribute__((noinline))
+static UInt vprintf_WRK ( OutputSink* sink,
+ const HChar *format, va_list vargs )
+{
+ printf_buf_t myprintf_buf
+ = { "", 0, sink };
+ UInt ret
+ = vprintf_to_buf(&myprintf_buf, format, vargs);
+ // Write out any chars left in the buffer.
+ if (myprintf_buf.buf_used > 0) {
+ send_bytes_to_logging_sink( myprintf_buf.sink,
+ myprintf_buf.buf,
+ myprintf_buf.buf_used );
+ }
+ return ret;
+}
+
+__attribute__((noinline))
+UInt VG_(vprintf) ( const HChar *format, va_list vargs )
+{
+ return vprintf_WRK( &VG_(log_output_sink), format, vargs );
+}
+
+__attribute__((noinline))
+UInt VG_(printf) ( const HChar *format, ... )
+{
+ UInt ret;
+ va_list vargs;
+ va_start(vargs, format);
+ ret = VG_(vprintf)(format, vargs);
+ va_end(vargs);
+ return ret;
+}
+
+static Bool toBool ( Int x ) {
+ Int r = (x == 0) ? False : True;
+ return (Bool)r;
+}
+
+__attribute__((noinline))
+static Int local_strlen ( const HChar* str )
+{
+ Int i = 0;
+ while (str[i] != 0) i++;
+ return i;
+}
+
+__attribute__((noinline))
+static HChar local_toupper ( HChar c )
+{
+ if (c >= 'a' && c <= 'z')
+ return c + ('A' - 'a');
+ else
+ return c;
+}
+
+
+/*------------------------------------------------------------*/
+/*--- A simple, generic, vprintf implementation. ---*/
+/*------------------------------------------------------------*/
+
+/* -----------------------------------------------
+ Distantly derived from:
+
+ vprintf replacement for Checker.
+ Copyright 1993, 1994, 1995 Tristan Gingold
+ Written September 1993 Tristan Gingold
+ Tristan Gingold, 8 rue Parmentier, F-91120 PALAISEAU, FRANCE
+
+ (Checker itself was GPL'd.)
+ ----------------------------------------------- */
+
+/* Some flags. */
+#define VG_MSG_SIGNED 1 /* The value is signed. */
+#define VG_MSG_ZJUSTIFY 2 /* Must justify with '0'. */
+#define VG_MSG_LJUSTIFY 4 /* Must justify on the left. */
+#define VG_MSG_PAREN 8 /* Parenthesize if present (for %y) */
+#define VG_MSG_COMMA 16 /* Add commas to numbers (for %d, %u) */
+#define VG_MSG_ALTFORMAT 32 /* Convert the value to alternate format */
+
+/* Copy a string into the buffer. */
+static __attribute__((noinline))
+UInt myvprintf_str ( void(*send)(HChar,void*),
+ void* send_arg2,
+ Int flags,
+ Int width,
+ HChar* str,
+ Bool capitalise )
+{
+# define MAYBE_TOUPPER(ch) (capitalise ? local_toupper(ch) : (ch))
+ UInt ret = 0;
+ Int i, extra;
+ Int len = local_strlen(str);
+
+ if (width == 0) {
+ ret += len;
+ for (i = 0; i < len; i++)
+ send(MAYBE_TOUPPER(str[i]), send_arg2);
+ return ret;
+ }
+
+ if (len > width) {
+ ret += width;
+ for (i = 0; i < width; i++)
+ send(MAYBE_TOUPPER(str[i]), send_arg2);
+ return ret;
+ }
+
+ extra = width - len;
+ if (flags & VG_MSG_LJUSTIFY) {
+ ret += extra;
+ for (i = 0; i < extra; i++)
+ send(' ', send_arg2);
+ }
+ ret += len;
+ for (i = 0; i < len; i++)
+ send(MAYBE_TOUPPER(str[i]), send_arg2);
+ if (!(flags & VG_MSG_LJUSTIFY)) {
+ ret += extra;
+ for (i = 0; i < extra; i++)
+ send(' ', send_arg2);
+ }
+
+# undef MAYBE_TOUPPER
+ return ret;
+}
+
+
+/* Copy a string into the buffer, escaping bad XML chars. */
+static
+UInt myvprintf_str_XML_simplistic ( void(*send)(HChar,void*),
+ void* send_arg2,
+ HChar* str )
+{
+ UInt ret = 0;
+ Int i;
+ Int len = local_strlen(str);
+ HChar* alt;
+
+ for (i = 0; i < len; i++) {
+ switch (str[i]) {
+ case '&': alt = "&"; break;
+ case '<': alt = "<"; break;
+ case '>': alt = ">"; break;
+ default: alt = NULL;
+ }
+
+ if (alt) {
+ while (*alt) {
+ send(*alt, send_arg2);
+ ret++;
+ alt++;
+ }
+ } else {
+ send(str[i], send_arg2);
+ ret++;
+ }
+ }
+
+ return ret;
+}
+
+
+/* Write P into the buffer according to these args:
+ * If SIGN is true, p is a signed.
+ * BASE is the base.
+ * If WITH_ZERO is true, '0' must be added.
+ * WIDTH is the width of the field.
+ */
+static
+UInt myvprintf_int64 ( void(*send)(HChar,void*),
+ void* send_arg2,
+ Int flags,
+ Int base,
+ Int width,
+ Bool capitalised,
+ ULong p )
+{
+ HChar buf[40];
+ Int ind = 0;
+ Int i, nc = 0;
+ Bool neg = False;
+ HChar* digits = capitalised ? "0123456789ABCDEF" : "0123456789abcdef";
+ UInt ret = 0;
+
+ if (base < 2 || base > 16)
+ return ret;
+
+ if ((flags & VG_MSG_SIGNED) && (Long)p < 0) {
+ p = - (Long)p;
+ neg = True;
+ }
+
+ if (p == 0)
+ buf[ind++] = '0';
+ else {
+ while (p > 0) {
+ if (flags & VG_MSG_COMMA && 10 == base &&
+ 0 == (ind-nc) % 3 && 0 != ind)
+ {
+ buf[ind++] = ',';
+ nc++;
+ }
+ buf[ind++] = digits[p % base];
+ p /= base;
+ }
+ }
+
+ if (neg)
+ buf[ind++] = '-';
+
+ if (width > 0 && !(flags & VG_MSG_LJUSTIFY)) {
+ for(; ind < width; ind++) {
+ /* assert(ind < 39); */
+ if (ind > 39) {
+ buf[39] = 0;
+ break;
+ }
+ buf[ind] = (flags & VG_MSG_ZJUSTIFY) ? '0': ' ';
+ }
+ }
+
+ /* Reverse copy to buffer. */
+ ret += ind;
+ for (i = ind -1; i >= 0; i--) {
+ send(buf[i], send_arg2);
+ }
+ if (width > 0 && (flags & VG_MSG_LJUSTIFY)) {
+ for(; ind < width; ind++) {
+ ret++;
+ /* Never pad with zeroes on RHS -- changes the value! */
+ send(' ', send_arg2);
+ }
+ }
+ return ret;
+}
+
+
+/* A simple vprintf(). */
+/* EXPORTED */
+__attribute__((noinline))
+UInt
+VG_(debugLog_vprintf) (
+ void(*send)(HChar,void*),
+ void* send_arg2,
+ const HChar* format,
+ va_list vargs
+)
+{
+ UInt ret = 0;
+ Int i;
+ Int flags;
+ Int width;
+ Int n_ls = 0;
+ Bool is_long, caps;
+
+ /* We assume that vargs has already been initialised by the
+ caller, using va_start, and that the caller will similarly
+ clean up with va_end.
+ */
+
+ for (i = 0; format[i] != 0; i++) {
+ if (format[i] != '%') {
+ send(format[i], send_arg2);
+ ret++;
+ continue;
+ }
+ i++;
+ /* A '%' has been found. Ignore a trailing %. */
+ if (format[i] == 0)
+ break;
+ if (format[i] == '%') {
+ /* '%%' is replaced by '%'. */
+ send('%', send_arg2);
+ ret++;
+ continue;
+ }
+ flags = 0;
+ n_ls = 0;
+ width = 0; /* length of the field. */
+ while (1) {
+ switch (format[i]) {
+ case '(':
+ flags |= VG_MSG_PAREN;
+ break;
+ case ',':
+ case '\'':
+ /* If ',' or '\'' follows '%', commas will be inserted. */
+ flags |= VG_MSG_COMMA;
+ break;
+ case '-':
+ /* If '-' follows '%', justify on the left. */
+ flags |= VG_MSG_LJUSTIFY;
+ break;
+ case '0':
+ /* If '0' follows '%', pads will be inserted. */
+ flags |= VG_MSG_ZJUSTIFY;
+ break;
+ case '#':
+ /* If '#' follows '%', alternative format will be used. */
+ flags |= VG_MSG_ALTFORMAT;
+ break;
+ default:
+ goto parse_fieldwidth;
+ }
+ i++;
+ }
+ parse_fieldwidth:
+ /* Compute the field length. */
+ while (format[i] >= '0' && format[i] <= '9') {
+ width *= 10;
+ width += format[i++] - '0';
+ }
+ while (format[i] == 'l') {
+ i++;
+ n_ls++;
+ }
+
+ // %d means print a 32-bit integer.
+ // %ld means print a word-size integer.
+ // %lld means print a 64-bit integer.
+ if (0 == n_ls) { is_long = False; }
+ else if (1 == n_ls) { is_long = ( sizeof(void*) == sizeof(Long) ); }
+ else { is_long = True; }
+
+ switch (format[i]) {
+ case 'o': /* %o */
+ if (flags & VG_MSG_ALTFORMAT) {
+ ret += 2;
+ send('0',send_arg2);
+ }
+ if (is_long)
+ ret += myvprintf_int64(send, send_arg2, flags, 8, width, False,
+ (ULong)(va_arg (vargs, ULong)));
+ else
+ ret += myvprintf_int64(send, send_arg2, flags, 8, width, False,
+ (ULong)(va_arg (vargs, UInt)));
+ break;
+ case 'd': /* %d */
+ flags |= VG_MSG_SIGNED;
+ if (is_long)
+ ret += myvprintf_int64(send, send_arg2, flags, 10, width, False,
+ (ULong)(va_arg (vargs, Long)));
+ else
+ ret += myvprintf_int64(send, send_arg2, flags, 10, width, False,
+ (ULong)(va_arg (vargs, Int)));
+ break;
+ case 'u': /* %u */
+ if (is_long)
+ ret += myvprintf_int64(send, send_arg2, flags, 10, width, False,
+ (ULong)(va_arg (vargs, ULong)));
+ else
+ ret += myvprintf_int64(send, send_arg2, flags, 10, width, False,
+ (ULong)(va_arg (vargs, UInt)));
+ break;
+ case 'p': /* %p */
+ ret += 2;
+ send('0',send_arg2);
+ send('x',send_arg2);
+ ret += myvprintf_int64(send, send_arg2, flags, 16, width, True,
+ (ULong)((UWord)va_arg (vargs, void *)));
+ break;
+ case 'x': /* %x */
+ case 'X': /* %X */
+ caps = toBool(format[i] == 'X');
+ if (flags & VG_MSG_ALTFORMAT) {
+ ret += 2;
+ send('0',send_arg2);
+ send('x',send_arg2);
+ }
+ if (is_long)
+ ret += myvprintf_int64(send, send_arg2, flags, 16, width, caps,
+ (ULong)(va_arg (vargs, ULong)));
+ else
+ ret += myvprintf_int64(send, send_arg2, flags, 16, width, caps,
+ (ULong)(va_arg (vargs, UInt)));
+ break;
+ case 'c': /* %c */
+ ret++;
+ send(va_arg (vargs, int), send_arg2);
+ break;
+ case 's': case 'S': { /* %s */
+ char *str = va_arg (vargs, char *);
+ if (str == (char*) 0) str = "(null)";
+ ret += myvprintf_str(send, send_arg2,
+ flags, width, str, format[i]=='S');
+ break;
+ }
+ case 't': { /* %t, like %s but escaping chars for XML safety */
+ /* Note: simplistic; ignores field width and flags */
+ char *str = va_arg (vargs, char *);
+ if (str == (char*) 0) str = "(null)";
+ ret += myvprintf_str_XML_simplistic(send, send_arg2, str);
+ break;
+ }
+
+// case 'y': { /* %y - print symbol */
+// Char buf[100];
+// Char *cp = buf;
+// Addr a = va_arg(vargs, Addr);
+//
+// if (flags & VG_MSG_PAREN)
+// *cp++ = '(';
+// if (VG_(get_fnname_w_offset)(a, cp, sizeof(buf)-4)) {
+// if (flags & VG_MSG_PAREN) {
+// cp += local_strlen(cp);
+// *cp++ = ')';
+// *cp = '\0';
+// }
+// ret += myvprintf_str(send, send_arg2, flags, width, buf, 0);
+// }
+// break;
+// }
+ default:
+ break;
+ }
+ }
+ return ret;
+}
+
+
+static void add_to__sprintf_buf ( HChar c, void *p )
+{
+ HChar** b = p;
+ *(*b)++ = c;
+}
+
+UInt VG_(vsprintf) ( HChar* buf, const HChar *format, va_list vargs )
+{
+ Int ret;
+ HChar* sprintf_ptr = buf;
+
+ ret = VG_(debugLog_vprintf)
+ ( add_to__sprintf_buf, &sprintf_ptr, format, vargs );
+ add_to__sprintf_buf('\0', &sprintf_ptr);
+
+ assert(local_strlen(buf) == ret);
+
+ return ret;
+}
+
+UInt VG_(sprintf) ( HChar* buf, const HChar *format, ... )
+{
+ UInt ret;
+ va_list vargs;
+ va_start(vargs,format);
+ ret = VG_(vsprintf)(buf, format, vargs);
+ va_end(vargs);
+ return ret;
+}
+
+
+
+/* ---------------------------------------------------------------------
percentify()
------------------------------------------------------------------ */
@@ -21,25 +553,26 @@
// Percentify n/m with d decimal places. Includes the '%' symbol at the end.
// Right justifies in 'buf'.
-void VG_percentify(ULong n, ULong m, UInt d, Int n_buf, char buf[])
+__attribute__((noinline))
+void VG_percentify(ULong n, ULong m, UInt d, Int n_buf, HChar buf[])
{
Int i, len, space;
ULong p1;
- Char fmt[32];
+ HChar fmt[32];
if (m == 0) {
// Have to generate the format string in order to be flexible about
// the width of the field.
- sprintf(fmt, "%%-%ds", n_buf);
+ VG_(sprintf)(fmt, "%%-%ds", n_buf);
// fmt is now "%<n_buf>s" where <d> is 1,2,3...
- sprintf(buf, fmt, "--%");
+ VG_(sprintf)(buf, fmt, "--%");
return;
}
p1 = (100*n) / m;
if (d == 0) {
- sprintf(buf, "%lld%%", p1);
+ VG_(sprintf)(buf, "%lld%%", p1);
} else {
ULong p2;
UInt ex;
@@ -53,12 +586,12 @@
p2 = ((100*n*ex) / m) % ex;
// Have to generate the format string in order to be flexible about
// the width of the post-decimal-point part.
- sprintf(fmt, "%%lld.%%0%dlld%%%%", d);
+ VG_(sprintf)(fmt, "%%lld.%%0%dlld%%%%", d);
// fmt is now "%lld.%0<d>lld%%" where <d> is 1,2,3...
- sprintf(buf, fmt, p1, p2);
+ VG_(sprintf)(buf, fmt, p1, p2);
}
- len = strlen(buf);
+ len = local_strlen(buf);
space = n_buf - len;
if (space < 0) space = 0; /* Allow for v. small field_width */
i = len;
@@ -79,23 +612,24 @@
static UInt n_SP_updates_generic_known = 0;
static UInt n_SP_updates_generic_unknown = 0;
+__attribute__((noinline))
void VG_print_translation_stats ( void )
{
- Char buf[6];
+ HChar buf[6];
UInt n_SP_updates = n_SP_updates_fast + n_SP_updates_generic_known
+ n_SP_updates_generic_unknown;
VG_percentify(n_SP_updates_fast, n_SP_updates, 1, 6, buf);
- printf(
+ VG_(printf)(
"translate: fast SP updates identified: %'u (%s)\n",
n_SP_updates_fast, buf );
VG_percentify(n_SP_updates_generic_known, n_SP_updates, 1, 6, buf);
- printf(
+ VG_(printf)(
"translate: generic_known SP updates identified: %'u (%s)\n",
n_SP_updates_generic_known, buf );
VG_percentify(n_SP_updates_generic_unknown, n_SP_updates, 1, 6, buf);
- printf(
+ VG_(printf)(
"translate: generic_unknown SP updates identified: %'u (%s)\n",
n_SP_updates_generic_unknown, buf );
}
Modified: trunk/exp-sgcheck/tests/bad_percentify.stderr.exp-glibc28-amd64
===================================================================
--- trunk/exp-sgcheck/tests/bad_percentify.stderr.exp-glibc28-amd64 2011-05-16 11:49:40 UTC (rev 11761)
+++ trunk/exp-sgcheck/tests/bad_percentify.stderr.exp-glibc28-amd64 2011-05-17 15:36:01 UTC (rev 11762)
@@ -1,33 +1,31 @@
+exp-sgcheck, a stack and global array overrun detector
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
- by 0x........: ...
- by 0x........: VG_print_translation_stats (bad_percentify.c:88)
- by 0x........: main (bad_percentify.c:107)
+ at 0x........: local_strlen (bad_percentify.c:138)
+ by 0x........: VG_vsprintf (bad_percentify.c:531)
+ by 0x........: VG_sprintf (bad_percentify.c:541)
+ by 0x........: VG_percentify (bad_percentify.c:568)
+ by 0x........: VG_print_translation_stats (bad_percentify.c:621)
+ by 0x........: main (bad_percentify.c:641)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" of size 6 in frame 4 back from here
Actual: unknown
+ Actual: is 0 after Expected
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
- by 0x........: ...
- by 0x........: VG_print_translation_stats (bad_percentify.c:93)
- by 0x........: main (bad_percentify.c:107)
+ at 0x........: local_strlen (bad_percentify.c:138)
+ by 0x........: myvprintf_str (bad_percentify.c:187)
+ by 0x........: VG_debugLog_vprintf (bad_percentify.c:479)
+ by 0x........: vprintf_to_buf (bad_percentify.c:89)
+ by 0x........: vprintf_WRK (bad_percentify.c:102)
+ by 0x........: VG_vprintf (bad_percentify.c:115)
+ by 0x........: VG_printf (bad_percentify.c:124)
+ by 0x........: VG_print_translation_stats (bad_percentify.c:622)
+ by 0x........: main (bad_percentify.c:641)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" of size 6 in frame 7 back from here
Actual: unknown
+ Actual: is 0 after Expected
-Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
- by 0x........: ...
- by 0x........: VG_print_translation_stats (bad_percentify.c:98)
- by 0x........: main (bad_percentify.c:107)
- Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
- Actual: unknown
-
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 6 errors from 2 contexts (suppressed: 0 from 0)
Modified: trunk/exp-sgcheck/tests/bad_percentify.stdout.exp
===================================================================
--- trunk/exp-sgcheck/tests/bad_percentify.stdout.exp 2011-05-16 11:49:40 UTC (rev 11761)
+++ trunk/exp-sgcheck/tests/bad_percentify.stdout.exp 2011-05-17 15:36:01 UTC (rev 11762)
@@ -1,3 +1,3 @@
-translate: fast SP updates identified: 0 (--% )
-translate: generic_known SP updates identified: 0 (--% )
-translate: generic_unknown SP updates identified: 0 (--% )
+translate: fast SP updates identified: 0 ( --%)
+translate: generic_known SP updates identified: 0 ( --%)
+translate: generic_unknown SP updates identified: 0 ( --%)
|
|
From: Bart V. A. <bva...@ac...> - 2011-05-17 08:28:08
|
Nightly build on cellbuzz-native ( cellbuzz, ppc64, Fedora 7, native ) Started at 2011-05-17 02:48:00 EDT Ended at 2011-05-17 04:27:56 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 == 460 tests, 20 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/addressable (stderr) memcheck/tests/custom_alloc (stderr) memcheck/tests/deep_templates (stdout) memcheck/tests/describe-block (stderr) memcheck/tests/mempool (stderr) memcheck/tests/mempool2 (stderr) memcheck/tests/origin1-yes (stderr) memcheck/tests/origin3-no (stderr) memcheck/tests/wrap8 (stdout) memcheck/tests/wrap8 (stderr) callgrind/tests/simwork-both (stdout) callgrind/tests/simwork-both (stderr) callgrind/tests/simwork-branch (stdout) callgrind/tests/simwork-branch (stderr) none/tests/empty-exe (stderr) none/tests/faultstatus (stderr) none/tests/linux/mremap (stderr) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/round (stdout) none/tests/ppc32/test_gx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/round (stdout) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) none/tests/shell_zerolength (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc23_bogus_condwait (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 460 tests, 19 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/addressable (stderr) memcheck/tests/custom_alloc (stderr) memcheck/tests/deep_templates (stdout) memcheck/tests/describe-block (stderr) memcheck/tests/mempool (stderr) memcheck/tests/mempool2 (stderr) memcheck/tests/origin1-yes (stderr) memcheck/tests/origin3-no (stderr) memcheck/tests/wrap8 (stdout) memcheck/tests/wrap8 (stderr) callgrind/tests/simwork-both (stdout) callgrind/tests/simwork-both (stderr) callgrind/tests/simwork-branch (stdout) callgrind/tests/simwork-branch (stderr) none/tests/empty-exe (stderr) none/tests/faultstatus (stderr) none/tests/linux/mremap (stderr) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/round (stdout) none/tests/ppc32/test_gx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/round (stdout) 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/tc23_bogus_condwait (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Tue May 17 03:38:35 2011 --- new.short Tue May 17 04:27:56 2011 *************** *** 8,10 **** ! == 460 tests, 19 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/addressable (stderr) --- 8,10 ---- ! == 460 tests, 20 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/addressable (stderr) *************** *** 35,36 **** --- 35,37 ---- helgrind/tests/hg05_race2 (stderr) + helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) |
|
From: Rich C. <rc...@wi...> - 2011-05-17 05:45:35
|
Nightly build on ppc32 ( Linux 2.6.27.45-0.1-default ppc )
Started at 2011-05-16 23:26:01 CDT
Ended at 2011-05-17 00:45:19 CDT
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
== 460 tests, 15 stderr failures, 5 stdout failures, 2 stderrB failures, 0 stdoutB failures, 2 post failures ==
gdbserver_tests/mcinfcallWSRU (stderrB)
gdbserver_tests/mcvabits (stderrB)
memcheck/tests/badjump (stderr)
memcheck/tests/badjump2 (stderr)
memcheck/tests/linux/stack_changes (stderr)
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/supp_unknown (stderr)
memcheck/tests/varinfo6 (stderr)
massif/tests/deep-D (post)
massif/tests/overloaded-new (post)
none/tests/linux/mremap (stderr)
none/tests/ppc32/jm-fp (stdout)
none/tests/ppc32/jm-fp (stderr)
none/tests/ppc32/power5+_round (stdout)
none/tests/ppc32/power5+_round (stderr)
none/tests/ppc32/round (stdout)
none/tests/ppc32/round (stderr)
none/tests/ppc32/test_fx (stdout)
none/tests/ppc32/test_fx (stderr)
none/tests/ppc32/test_gx (stdout)
helgrind/tests/hg05_race2 (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
helgrind/tests/tc23_bogus_condwait (stderr)
drd/tests/tc23_bogus_condwait (stderr)
=================================================
./valgrind-new/drd/tests/tc23_bogus_condwait.stderr.diff-darwin-amd64
=================================================
--- tc23_bogus_condwait.stderr.exp-darwin-amd64 2011-05-17 00:06:04.000000000 -0500
+++ tc23_bogus_condwait.stderr.out 2011-05-17 00:44:58.000000000 -0500
@@ -3,67 +3,11 @@
at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
by 0x........: main (tc23_bogus_condwait.c:69)
-Mutex not locked: mutex 0x........, recursion count 0, owner 0.
- at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:72)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:51)
-
-Thread 3:
-Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread.
- at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?)
- by 0x........: rescue_me (tc23_bogus_condwait.c:20)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-cond 0x........ was first observed at:
- at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:56)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:51)
-
-Thread 1:
-The object at address 0x........ is not a mutex.
- at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:75)
-rwlock 0x........ was first observed at:
- at 0x........: pthread_rwlock_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:57)
-
-Mutex not locked by calling thread: mutex 0x........, recursion count 1, owner 2.
- at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:78)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:53)
-
-Thread 3:
-Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread.
- at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?)
- by 0x........: rescue_me (tc23_bogus_condwait.c:24)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-cond 0x........ was first observed at:
- at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:56)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:53)
-
-The impossible happened: mutex 0x........ is locked simultaneously by two threads (recursion count 1, owners 2 and 1) !
-Thread 2:
-Mutex not locked by calling thread: mutex 0x........, recursion count 2, owner 1.
- at 0x........: pthread_mutex_unlock (drd_pthread_intercepts.c:?)
- by 0x........: grab_the_lock (tc23_bogus_condwait.c:42)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:53)
-
-Assertion failed: (!r), function main, file tc23_bogus_condwait.c, line 86.
-Process terminating with default action of signal 6 (SIGABRT)
- at 0x........: __kill (in /...libc...)
- by 0x........: __assert_rtn (in /...libc...)
- by 0x........: main (tc23_bogus_condwait.c:86)
+Process terminating with default action of signal 7 (SIGBUS)
+ Invalid address alignment at address 0x........
+ at 0x........: __pthread_mutex_unlock_usercnt (pthread_mutex_unlock.c:?)
+ by 0x........: pthread_cond_wait@@GLIBC_2.3.2 (pthread_cond_wait.c:?)
+ by 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
-ERROR SUMMARY: 9 errors from 7 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 2 errors from 1 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/tc23_bogus_condwait.stderr.diff-darwin-x86
=================================================
--- tc23_bogus_condwait.stderr.exp-darwin-x86 2011-05-17 00:06:03.000000000 -0500
+++ tc23_bogus_condwait.stderr.out 2011-05-17 00:44:58.000000000 -0500
@@ -3,61 +3,11 @@
at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
by 0x........: main (tc23_bogus_condwait.c:69)
-Mutex not locked: mutex 0x........, recursion count 0, owner 0.
- at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:72)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:51)
-
-Thread 3:
-Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread.
- at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?)
- by 0x........: rescue_me (tc23_bogus_condwait.c:20)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-cond 0x........ was first observed at:
- at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:56)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:51)
-
-Thread 1:
-The object at address 0x........ is not a mutex.
- at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:75)
-rwlock 0x........ was first observed at:
- at 0x........: pthread_rwlock_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:57)
-
-Mutex not locked by calling thread: mutex 0x........, recursion count 1, owner 2.
- at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:78)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:53)
-
-Thread 3:
-Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread.
- at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?)
- by 0x........: rescue_me (tc23_bogus_condwait.c:24)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-cond 0x........ was first observed at:
- at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:56)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:53)
-
-The impossible happened: mutex 0x........ is locked simultaneously by two threads (recursion count 1, owners 2 and 1) !
-Thread 2:
-Mutex not locked by calling thread: mutex 0x........, recursion count 2, owner 1.
- at 0x........: pthread_mutex_unlock (drd_pthread_intercepts.c:?)
- by 0x........: grab_the_lock (tc23_bogus_condwait.c:42)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:53)
+Process terminating with default action of signal 7 (SIGBUS)
+ Invalid address alignment at address 0x........
+ at 0x........: __pthread_mutex_unlock_usercnt (pthread_mutex_unlock.c:?)
+ by 0x........: pthread_cond_wait@@GLIBC_2.3.2 (pthread_cond_wait.c:?)
+ by 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
-ERROR SUMMARY: 9 errors from 7 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 2 errors from 1 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/tc23_bogus_condwait.stderr.diff-linux-ppc
=================================================
--- tc23_bogus_condwait.stderr.exp-linux-ppc 2011-05-17 00:06:03.000000000 -0500
+++ tc23_bogus_condwait.stderr.out 2011-05-17 00:44:58.000000000 -0500
@@ -6,8 +6,8 @@
Process terminating with default action of signal 7 (SIGBUS)
Invalid address alignment at address 0x........
- at 0x........: (within libpthread-?.?.so)
- by 0x........: pthread_cond_wait@@GLIBC_2.3.2(within libpthread-?.?.so)
+ at 0x........: __pthread_mutex_unlock_usercnt (pthread_mutex_unlock.c:?)
+ by 0x........: pthread_cond_wait@@GLIBC_2.3.2 (pthread_cond_wait.c:?)
by 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
ERROR SUMMARY: 2 errors from 1 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/tc23_bogus_condwait.stderr.diff-linux-x86
=================================================
--- tc23_bogus_condwait.stderr.exp-linux-x86 2011-05-17 00:06:04.000000000 -0500
+++ tc23_bogus_condwait.stderr.out 2011-05-17 00:44:58.000000000 -0500
@@ -3,84 +3,11 @@
at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
by 0x........: main (tc23_bogus_condwait.c:69)
-Thread 3:
-Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread.
- at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?)
- by 0x........: rescue_me (tc23_bogus_condwait.c:20)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-cond 0x........ was first observed at:
- at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:56)
-
-Thread 1:
-Mutex not locked: mutex 0x........, recursion count 0, owner 0.
- at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:72)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:51)
-
-Thread 3:
-Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread.
- at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?)
- by 0x........: rescue_me (tc23_bogus_condwait.c:24)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-cond 0x........ was first observed at:
- at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:56)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:51)
-
-Thread 1:
-The object at address 0x........ is not a mutex.
- at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:75)
-rwlock 0x........ was first observed at:
- at 0x........: pthread_rwlock_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:57)
-
-Thread 3:
-Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread.
- at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?)
- by 0x........: rescue_me (tc23_bogus_condwait.c:28)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-cond 0x........ was first observed at:
- at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:56)
-rwlock 0x........ was first observed at:
- at 0x........: pthread_rwlock_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:57)
-
-Thread 1:
-Mutex not locked by calling thread: mutex 0x........, recursion count 1, owner 2.
- at 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:78)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:53)
-
-Thread 3:
-Probably a race condition: condition variable 0x........ has been signaled but the associated mutex 0x........ is not locked by the signalling thread.
- at 0x........: pthread_cond_signal (drd_pthread_intercepts.c:?)
- by 0x........: rescue_me (tc23_bogus_condwait.c:32)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-cond 0x........ was first observed at:
- at 0x........: pthread_cond_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:56)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:53)
-
-The impossible happened: mutex 0x........ is locked simultaneously by two threads (recursion count 1, owners 2 and 1) !
-Thread 2:
-Mutex not locked by calling thread: mutex 0x........, recursion count 2, owner 1.
- at 0x........: pthread_mutex_unlock (drd_pthread_intercepts.c:?)
- by 0x........: grab_the_lock (tc23_bogus_condwait.c:42)
- by 0x........: vgDrd_thread_wrapper (drd_pthread_intercepts.c:?)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: main (tc23_bogus_condwait.c:53)
+Process terminating with default action of signal 7 (SIGBUS)
+ Invalid address alignment at address 0x........
+ at 0x........: __pthread_mutex_unlock_usercnt (pthread_mutex_unlock.c:?)
+ by 0x........: pthread_cond_wait@@GLIBC_2.3.2 (pthread_cond_wait.c:?)
+ by 0x........: pthread_cond_wait (drd_pthread_intercepts.c:?)
-ERROR SUMMARY: 11 errors from 9 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 2 errors from 1 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/gdbserver_tests/mcinfcallWSRU.stderrB.diff
=================================================
--- mcinfcallWSRU.stderrB.exp 2011-05-17 00:05:44.000000000 -0500
+++ mcinfcallWSRU.stderrB.out 2011-05-17 00:22:02.000000000 -0500
@@ -24,28 +24,25 @@
39 for (i = 0; i < burn; i++) loopnr++;
$1 = void
[Switching to thread 2 (Thread ....)]#0 0x........ in syscall ...
-Could not write register "xxx"; remote failure reply 'E.
+Remote failure reply: E.
ERROR changing register xxx regno y
gdb commands changing registers (pc, sp, ...) (e.g. 'jump',
set pc, calling from gdb a function in the debugged process, ...)
can only be accepted if the thread is VgTs_Runnable or VgTs_Yielding state
Thread status is VgTs_WaitSys
-'
[Switching to thread 3 (Thread ....)]#0 0x........ in syscall ...
-Could not write register "xxx"; remote failure reply 'E.
+Remote failure reply: E.
ERROR changing register xxx regno y
gdb commands changing registers (pc, sp, ...) (e.g. 'jump',
set pc, calling from gdb a function in the debugged process, ...)
can only be accepted if the thread is VgTs_Runnable or VgTs_Yielding state
Thread status is VgTs_WaitSys
-'
[Switching to thread 4 (Thread ....)]#0 0x........ in syscall ...
-Could not write register "xxx"; remote failure reply 'E.
+Remote failure reply: E.
ERROR changing register xxx regno y
gdb commands changing registers (pc, sp, ...) (e.g. 'jump',
set pc, calling from gdb a function in the debugged process, ...)
can only be accepted if the thread is VgTs_Runnable or VgTs_Yielding state
Thread status is VgTs_WaitSys
-'
monitor command request to kill this process
Remote connection closed
=================================================
./valgrind-new/gdbserver_tests/mcvabits.stderrB.diff
=================================================
--- mcvabits.stderrB.exp 2011-05-17 00:05:44.000000000 -0500
+++ mcvabits.stderrB.out 2011-05-17 00:22:26.000000000 -0500
@@ -1,55 +1,32 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
-Address 0x........ len 10 addressable
- Address 0x........ is 0 bytes inside data symbol "undefined"
-Address 0x........ len 10 defined
- Address 0x........ is 0 bytes inside data symbol "undefined"
-00000000 00000000 0000
-Address 0x........ len 10 addressable
- Address 0x........ is 0 bytes inside data symbol "undefined"
-Address 0x........ len 10 not defined:
-Uninitialised value at 0x........
- Address 0x........ is 0 bytes inside data symbol "undefined"
-ff00ff00 ff00ff00 ff00
-Address 0x........ len 10 addressable
- Address 0x........ is 0 bytes inside data symbol "undefined"
-Address 0x........ len 10 not defined:
-Uninitialised value at 0x........
- Address 0x........ is 0 bytes inside data symbol "undefined"
-ff000000 0000ff00 ff00
-Address 0x........ len 10 addressable
- Address 0x........ is 0 bytes inside data symbol "undefined"
-Address 0x........ len 10 not defined:
-Uninitialised value at 0x........
- Address 0x........ is 0 bytes inside data symbol "undefined"
-ff00ffff ffffff00 ff00
-Address 0x........ len 2 addressable
- Address 0x........ is 0 bytes inside data symbol "undefined"
-Address 0x........ len 2 not defined:
-Uninitialised value at 0x........
- Address 0x........ is 0 bytes inside data symbol "undefined"
-ff00
-Address 0x........ len 2 not addressable:
-bad address 0x........
- Address 0x........ is 2 bytes inside data symbol "undefined"
-Address 0x........ len 2 not addressable:
-bad address 0x........
- Address 0x........ is 2 bytes inside data symbol "undefined"
-____
-Address 0x........ len 2 has 2 bytes unaddressable
-Address 0x........ len 6 addressable
- Address 0x........ is 4 bytes inside data symbol "undefined"
-Address 0x........ len 6 not defined:
-Uninitialised value at 0x........
- Address 0x........ is 4 bytes inside data symbol "undefined"
-ffffff00 ff00
-Address 0x........ len 10 not addressable:
-bad address 0x........
- Address 0x........ is 0 bytes inside data symbol "undefined"
-Address 0x........ len 10 not addressable:
-bad address 0x........
- Address 0x........ is 0 bytes inside data symbol "undefined"
-0000____ 00000000 0000
-Address 0x........ len 10 has 2 bytes unaddressable
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
+Undefined command: "eval". Try "help".
monitor command request to kill this process
Remote connection closed
=================================================
./valgrind-new/helgrind/tests/hg05_race2.stderr.diff
=================================================
--- hg05_race2.stderr.exp 2011-05-17 00:05:41.000000000 -0500
+++ hg05_race2.stderr.out 2011-05-17 00:34:47.000000000 -0500
@@ -17,8 +17,6 @@
at 0x........: th (hg05_race2.c:17)
by 0x........: mythread_wrapper (hg_intercepts.c:...)
...
- Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
- declared at hg05_race2.c:24, in frame #x of thread x
Possible data race during write of size 4 at 0x........ by thread #x
at 0x........: th (hg05_race2.c:17)
@@ -28,8 +26,6 @@
at 0x........: th (hg05_race2.c:17)
by 0x........: mythread_wrapper (hg_intercepts.c:...)
...
- Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
- declared at hg05_race2.c:24, in frame #x of thread x
ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2011-05-17 00:05:41.000000000 -0500
+++ tc06_two_races_xml.stderr.out 2011-05-17 00:35:31.000000000 -0500
@@ -45,11 +45,17 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>do_clone</fn>
+ <dir>...</dir>
+ <file>createthread.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>pthread_create@@GLIBC_2.2.5</fn>
+ <fn>pthread_create@@GLIBC_2.1</fn>
+ <dir>...</dir>
+ <file>createthread.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
@@ -121,6 +127,9 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
@@ -175,6 +184,9 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
@@ -229,6 +241,9 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
@@ -283,6 +298,9 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
=================================================
./valgrind-new/helgrind/tests/tc23_bogus_condwait.stderr.diff
=================================================
--- tc23_bogus_condwait.stderr.exp 2011-05-17 00:05:41.000000000 -0500
+++ tc23_bogus_condwait.stderr.out 2011-05-17 00:36:37.000000000 -0500
@@ -2,39 +2,24 @@
Thread #x is the program's root thread
Thread #x: pthread_cond_{timed}wait called with invalid mutex
- at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
- by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:69)
-Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
- by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
- by 0x........: main (tc23_bogus_condwait.c:72)
-
-Thread #x: pthread_cond_{timed}wait: cond is associated with a different mutex
- at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
- by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
- by 0x........: main (tc23_bogus_condwait.c:72)
-
-Thread #x: pthread_cond_{timed}wait called with mutex of type pthread_rwlock_t*
- at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
- by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
- by 0x........: main (tc23_bogus_condwait.c:75)
-
-Thread #x: pthread_cond_{timed}wait: cond is associated with a different mutex
- at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
- by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
- by 0x........: main (tc23_bogus_condwait.c:75)
-Thread #x: pthread_cond_{timed}wait called with mutex held by a different thread
- at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+Process terminating with default action of signal 7 (SIGBUS)
+ Invalid address alignment at address 0x........
+ at 0x........: __pthread_mutex_unlock_usercnt (pthread_mutex_unlock.c:64)
+ by 0x........: pthread_cond_wait@@GLIBC_2.3.2 (pthread_cond_wait.c:108)
by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
- by 0x........: main (tc23_bogus_condwait.c:78)
+ by 0x........: main (tc23_bogus_condwait.c:69)
+Thread #x was created
+ ...
+ by 0x........: pthread_create@* (hg_intercepts.c:...)
+ by 0x........: main (tc23_bogus_condwait.c:61)
-Thread #x: pthread_cond_{timed}wait: cond is associated with a different mutex
- at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
- by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
- by 0x........: main (tc23_bogus_condwait.c:78)
+Thread #x: Exiting thread still holds 1 lock
+ ...
+ ...
-ERROR SUMMARY: 7 errors from 7 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/massif/tests/deep-D.post.diff
=================================================
--- deep-D.post.exp 2011-05-17 00:05:50.000000000 -0500
+++ deep-D.post.out 2011-05-17 00:31:08.000000000 -0500
@@ -46,8 +46,9 @@
8 3,264 3,264 3,200 64 0
9 3,672 3,672 3,600 72 0
98.04% (3,600B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->98.04% (3,600B) 0x........: (below main)
-
+->98.04% (3,600B) 0x........: ??? (in /...libc...)
+ ->98.04% (3,600B) 0x........: (below main)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
--------------------------------------------------------------------------------
=================================================
./valgrind-new/massif/tests/overloaded-new.post.diff
=================================================
--- overloaded-new.post.exp 2011-05-17 00:05:50.000000000 -0500
+++ overloaded-new.post.out 2011-05-17 00:31:19.000000000 -0500
@@ -42,14 +42,18 @@
4 12,032 12,032 12,000 32 0
5 12,032 12,032 12,000 32 0
99.73% (12,000B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->33.24% (4,000B) 0x........: main (overloaded-new.cpp:49)
-|
-->33.24% (4,000B) 0x........: main (overloaded-new.cpp:50)
-|
-->16.62% (2,000B) 0x........: main (overloaded-new.cpp:51)
-|
-->16.62% (2,000B) 0x........: main (overloaded-new.cpp:52)
-
+->33.24% (4,000B) 0x........: operator new(unsigned int) (overloaded-new.cpp:19)
+| ->33.24% (4,000B) 0x........: main (overloaded-new.cpp:49)
+|
+->33.24% (4,000B) 0x........: operator new(unsigned int, std::nothrow_t const&) (overloaded-new.cpp:24)
+| ->33.24% (4,000B) 0x........: main (overloaded-new.cpp:50)
+|
+->16.62% (2,000B) 0x........: operator new[](unsigned int) (overloaded-new.cpp:29)
+| ->16.62% (2,000B) 0x........: main (overloaded-new.cpp:51)
+|
+->16.62% (2,000B) 0x........: operator new[](unsigned int, std::nothrow_t const&) (overloaded-new.cpp:34)
+ ->16.62% (2,000B) 0x........: main (overloaded-new.cpp:52)
+
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
--------------------------------------------------------------------------------
=================================================
./valgrind-new/memcheck/tests/badjump.stderr.diff
=================================================
--- badjump.stderr.exp 2011-05-17 00:05:48.000000000 -0500
+++ badjump.stderr.out 2011-05-17 00:24:06.000000000 -0500
@@ -1,6 +1,7 @@
Jump to the invalid address stated on the next line
at 0x........: ???
+ by 0x........: ??? (in /...libc...)
by 0x........: (below main)
Address 0x........ is not stack'd, malloc'd or (recently) free'd
@@ -8,6 +9,7 @@
Process terminating with default action of signal 11 (SIGSEGV)
Access not within mapped region at address 0x........
at 0x........: ???
+ by 0x........: ??? (in /...libc...)
by 0x........: (below main)
If you believe this happened as a result of a stack
overflow in your program's main thread (unlikely but
=================================================
./valgrind-new/memcheck/tests/badjump.stderr.diff-s390x
=================================================
--- badjump.stderr.exp-s390x 2011-05-17 00:05:48.000000000 -0500
+++ badjump.stderr.out 2011-05-17 00:24:06.000000000 -0500
@@ -1,14 +1,16 @@
Jump to the invalid address stated on the next line
at 0x........: ???
- by 0x........: main (badjump.c:17)
+ by 0x........: ??? (in /...libc...)
+ by 0x........: (below main)
Address 0x........ is not stack'd, malloc'd or (recently) free'd
Process terminating with default action of signal 11 (SIGSEGV)
Access not within mapped region at address 0x........
at 0x........: ???
- by 0x........: main (badjump.c:17)
+ by 0x........: ??? (in /...libc...)
+ by 0x........: (below main)
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
=================================================
./valgrind-new/memcheck/tests/badjump2.stderr.diff
=================================================
--- badjump2.stderr.exp 2011-05-17 00:05:48.000000000 -0500
+++ badjump2.stderr.out 2011-05-17 00:24:08.000000000 -0500
@@ -1,5 +1,6 @@
Jump to the invalid address stated on the next line
at 0x........: ???
+ by 0x........: ??? (in /...libc...)
by 0x........: (below main)
Address 0x........ is not stack'd, malloc'd or (recently) free'd
=================================================
./valgrind-new/memcheck/tests/badjump2.stderr.diff-s390x
=================================================
--- badjump2.stderr.exp-s390x 2011-05-17 00:05:48.000000000 -0500
+++ badjump2.stderr.out 2011-05-17 00:24:08.000000000 -0500
@@ -1,6 +1,7 @@
Jump to the invalid address stated on the next line
at 0x........: ???
- by 0x........: main (badjump2.c:46)
+ by 0x........: ??? (in /...libc...)
+ by 0x........: (below main)
Address 0x........ is not stack'd, malloc'd or (recently) free'd
Signal caught, as expected
=================================================
./valgrind-new/memcheck/tests/linux/stack_changes.stderr.diff
=================================================
--- stack_changes.stderr.exp 2011-05-17 00:05:47.000000000 -0500
+++ stack_changes.stderr.out 2011-05-17 00:25:32.000000000 -0500
@@ -0,0 +1,5 @@
+WARNING: unhandled syscall: 249
+You may be able to write your own handler.
+Read the file README_MISSING_SYSCALL_OR_IOCTL.
+Nevertheless we consider this a bug. Please report
+it at http://valgrind.org/support/bug_reports.html.
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2011-05-17 00:05:48.000000000 -0500
+++ origin5-bz2.stderr.out 2011-05-17 00:26:55.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,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,18 +71,7 @@
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: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: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)
@@ -93,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)
@@ -104,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)
@@ -115,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
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2011-05-17 00:05:48.000000000 -0500
+++ origin5-bz2.stderr.out 2011-05-17 00:26:55.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,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 2011-05-17 00:05:48.000000000 -0500
+++ origin5-bz2.stderr.out 2011-05-17 00:26:55.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: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 2011-05-17 00:05:48.000000000 -0500
+++ origin5-bz2.stderr.out 2011-05-17 00:26:55.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,25 +9,25 @@
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
+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)
@@ -36,9 +36,9 @@
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........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -47,9 +47,9 @@
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........: mainSort (origin5-bz2.c:2854)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -58,9 +58,9 @@
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........: mainSort (origin5-bz2.c:2858)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -69,9 +69,9 @@
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........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -80,9 +80,9 @@
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
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/supp_unknown.stderr.diff
=================================================
--- supp_unknown.stderr.exp 2011-05-17 00:05:48.000000000 -0500
+++ supp_unknown.stderr.out 2011-05-17 00:28:45.000000000 -0500
@@ -1,7 +1,14 @@
+Jump to the invalid address stated on the next line
+ at 0x........: ???
+ by 0x........: ??? (in /...libc...)
+ by 0x........: (below main)
+ Address 0x........ is not stack'd, malloc'd or (recently) free'd
+
Process terminating with default action of signal 11 (SIGSEGV)
Access not within mapped region at address 0x........
at 0x........: ???
+ by 0x........: ??? (in /...libc...)
by 0x........: (below main)
If you believe this happened as a result of a stack
overflow in your program's main thread (unlikely but
=================================================
./valgrind-new/memcheck/tests/supp_unknown.stderr.diff-s390x
=================================================
--- supp_unknown.stderr.exp-s390x 2011-05-17 00:05:48.000000000 -0500
+++ supp_unknown.stderr.out 2011-05-17 00:28:45.000000000 -0500
@@ -1,8 +1,15 @@
+Jump to the invalid address stated on the next line
+ at 0x........: ???
+ by 0x........: ??? (in /...libc...)
+ by 0x........: (below main)
+ Address 0x........ is not stack'd, malloc'd or (recently) free'd
+
Process terminating with default action of signal 11 (SIGSEGV)
Access not within mapped region at address 0x........
at 0x........: ???
- by 0x........: main (badjump.c:17)
+ by 0x........: ??? (in /...libc...)
+ by 0x........: (below main)
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
=================================================
./valgrind-new/memcheck/tests/varinfo6.stderr.diff
=================================================
--- varinfo6.stderr.exp 2011-05-17 00:05:48.000000000 -0500
+++ varinfo6.stderr.out 2011-05-17 00:29:27.000000000 -0500
@@ -7,8 +7,7 @@
by 0x........: BZ2_bzCompress (varinfo6.c:4860)
by 0x........: BZ2_bzBuffToBuffCompress (varinfo6.c:5667)
by 0x........: main (varinfo6.c:6517)
- Location 0x........ is 2 bytes inside local var "budget"
- declared at varinfo6.c:3115, in frame #2 of thread 1
+ Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo6.c:34)
=================================================
./valgrind-new/memcheck/tests/varinfo6.stderr.diff-ppc64
=================================================
--- varinfo6.stderr.exp-ppc64 2011-05-17 00:05:48.000000000 -0500
+++ varinfo6.stderr.out 2011-05-17 00:29:27.000000000 -0500
@@ -1,5 +1,5 @@
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: mainSort (varinfo6.c:2999)
by 0x........: BZ2_blockSort (varinfo6.c:3143)
by 0x........: BZ2_compressBlock (varinfo6.c:4072)
@@ -10,7 +10,7 @@
Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: BZ2_decompress (varinfo6.c:1699)
by 0x........: BZ2_bzDecompress (varinfo6.c:5230)
by 0x........: BZ2_bzBuffToBuffDecompress (varinfo6.c:5715)
=================================================
./valgrind-new/none/tests/linux/mremap.stderr.diff
=================================================
--- mremap.stderr.exp 2011-05-17 00:05:58.000000000 -0500
+++ mremap.stderr.out 2011-05-17 00:32:17.000000000 -0500
@@ -1,3 +1,12 @@
-mremap(grow, nomove, constrained): Cannot allocate memory
+mremap(shrink, fixed): Invalid argument
+shrink, nomove: p=0x........ np=0x........: shrink moved?!
+mremap(shrink, maymove): Invalid argument
+shrink, maymove: p=0x........ np=0x........: shrink moved?!
+mremap(grow, fixed): Invalid argument
+grow, nomove: p=0x........ np=0x........: shrink moved?!
+mremap(grow, maymove): Invalid argument
+grow, maymove: p=0x........ np=0x........: shrink moved?!
+mremap(grow, nomove, constrained): Invalid argument
+mremap(grow, maymove, constrained): Invalid argument
=================================================
./valgrind-new/none/tests/linux/mremap.stderr.diff-glibc27
=================================================
--- mremap.stderr.exp-glibc27 2011-05-17 00:05:58.000000000 -0500
+++ mremap.stderr.out 2011-05-17 00:32:17.000000000 -0500
@@ -1,6 +1,12 @@
-mremap(grow, fixed): Cannot allocate memory
+mremap(shrink, fixed): Invalid argument
+shrink, nomove: p=0x........ np=0x........: shrink moved?!
+mremap(shrink, maymove): Invalid argument
+shrink, maymove: p=0x........ np=0x........: shrink moved?!
+mremap(grow, fixed): Invalid argument
grow, nomove: p=0x........ np=0x........: shrink moved?!
+mremap(grow, maymove): Invalid argument
grow, maymove: p=0x........ np=0x........: shrink moved?!
-mremap(grow, nomove, constrained): Cannot allocate memory
+mremap(grow, nomove, constrained): Invalid argument
+mremap(grow, maymove, constrained): Invalid argument
=================================================
./valgrind-new/none/tests/ppc32/jm-fp.stderr.diff
=================================================
--- jm-fp.stderr.exp 2011-05-17 00:05:57.000000000 -0500
+++ jm-fp.stderr.out 2011-05-17 00:32:51.000000000 -0500
@@ -1,2 +1,27 @@
+disInstr(ppc): declined to decode a GeneralPurpose-Optional insn.
+disInstr(ppc): unhandled instruction: 0x........
+ primary 63(0x........), secondary 44(0x........)
+valgrind: Unrecognised instruction at address 0x.........
+ at 0x........: test_fsqrt (jm-insns.c:1986)
+ by 0x........: test_float_one_arg (jm-insns.c:5738)
+ by 0x........: ??? (in /...libc...)
+ by 0x........: (below main)
+Your program just tried to execute an instruction that Valgrind
+did not recognise. There are two possible reasons for this.
+1. Your program has a bug and erroneously jumped to a non-code
+ location. If you are running Memcheck and you just saw a
+ warning about a bad jump, it's probably your program's fault.
+2. The instruction is legitimate but Valgrind doesn't handle it,
+ i.e. it's Valgrind's fault. If you think this is the case or
+ you are not sure, please let us know and we'll try to fix it.
+Either way, Valgrind will now raise a SIGILL signal which will
+probably kill your program.
+
+Process terminating with default action of signal 4 (SIGILL)
+ Illegal opcode at address 0x........
+ at 0x........: test_fsqrt (jm-insns.c:1986)
+ by 0x........: test_float_one_arg (jm-insns.c:5738)
+ by 0x........: ??? (in /...libc...)
+ by 0x........: (below main)
=================================================
./valgrind-new/none/tests/ppc32/jm-fp.stdout.diff
=================================================
--- jm-fp.stdout.exp 2011-05-17 00:05:57.000000000 -0500
+++ jm-fp.stdout.out 2011-05-17 00:32:51.000000000 -0500
@@ -794,570 +794,4 @@
fnabs 0010000000000001 => 8010000000000001
fnabs 00100094e0000359 => 80100094e0000359
- fnabs 3fe0000000000001 => bfe0000000000001
- fnabs 3fe00094e0000359 => bfe00094e0000359
- fnabs 8010000000000001 => 8010000000000001
- fnabs 80100094e0000359 => 80100094e0000359
- fnabs bfe0000000000001 => bfe0000000000001
- fnabs bfe00094e0000359 => bfe00094e0000359
- fnabs 0000000000000000 => 8000000000000000
- fnabs 8000000000000000 => 8000000000000000
- fnabs 7ff0000000000000 => fff0000000000000
- fnabs fff0000000000000 => fff0000000000000
- fnabs 7ff7ffffffffffff => fff7ffffffffffff
- fnabs fff7ffffffffffff => fff7ffffffffffff
- fnabs 7ff8000000000000 => fff8000000000000
- fnabs fff8000000000000 => fff8000000000000
-
- fsqrt 0010000000000001 => 2000000000000000
- fsqrt 00100094e0000359 => 2000004a6f52dd4a
- fsqrt 3fe0000000000001 => 3fe6a09e667f3bcd
- fsqrt 3fe00094e0000359 => 3fe6a107aacb50df
- fsqrt 8010000000000001 => 7ff8000000000000
- fsqrt 80100094e0000359 => 7ff8000000000000
- fsqrt bfe0000000000001 => 7ff8000000000000
- fsqrt bfe00094e0000359 => 7ff8000000000000
- fsqrt 0000000000000000 => 0000000000000000
- fsqrt 8000000000000000 => 8000000000000000
- fsqrt 7ff0000000000000 => 7ff0000000000000
- fsqrt fff0000000000000 => 7ff8000000000000
- fsqrt 7ff7ffffffffffff => 7fffffffffffffff
- fsqrt fff7ffffffffffff => ffffffffffffffff
- fsqrt 7ff8000000000000 => 7ff8000000000000
- fsqrt fff8000000000000 => fff8000000000000
-
-PPC floating point arith insns
- with one arg with flags update:
- frsp. 0010000000000001 => 0000000000000000
- frsp. 00100094e0000359 => 0000000000000000
- frsp. 3fe0000000000001 => 3fe0000000000000
- frsp. 3fe00094e0000359 => 3fe00094e0000000
- frsp. 8010000000000001 => 8000000000000000
- frsp. 80100094e0000359 => 8000000000000000
- frsp. bfe0000000000001 => bfe0000000000000
- frsp. bfe00094e0000359 => bfe00094e0000000
- frsp. 0000000000000000 => 0000000000000000
- frsp. 8000000000000000 => 8000000000000000
- frsp. 7ff0000000000000 => 7ff0000000000000
- frsp. fff0000000000000 => fff0000000000000
- frsp. 7ff7ffffffffffff => 7fffffffe0000000
- frsp. fff7ffffffffffff => ffffffffe0000000
- frsp. 7ff8000000000000 => 7ff8000000000000
- frsp. fff8000000000000 => fff8000000000000
-
- fctiw. 0010000000000001 => 0000000000000000
- fctiw. 00100094e0000359 => 0000000000000000
- fctiw. 3fe0000000000001 => 0000000000000001
- fctiw. 3fe00094e0000359 => 0000000000000001
- fctiw. 8010000000000001 => 0000000000000000
- fctiw. 80100094e0000359 => 0000000000000000
- fctiw. bfe0000000000001 => 00000000ffffffff
- fctiw. bfe00094e0000359 => 00000000ffffffff
- fctiw. 0000000000000000 => 0000000000000000
- fctiw. 8000000000000000 => 0000000000000000
- fctiw. 7ff0000000000000 => 000000007fffffff
- fctiw. fff0000000000000 => 0000000080000000
- fctiw. 7ff7ffffffffffff => 0000000080000000
- fctiw. fff7ffffffffffff => 0000000080000000
- fctiw. 7ff8000000000000 => 0000000080000000
- fctiw. fff8000000000000 => 0000000080000000
-
- fctiwz. 0010000000000001 => 0000000000000000
- fctiwz. 00100094e0000359 => 0000000000000000
- fctiwz. 3fe0000000000001 => 0000000000000000
- fctiwz. 3fe00094e0000359 => 0000000000000000
- fctiwz. 8010000000000001 => 0000000000000000
- fctiwz. 80100094e0000359 => 0000000000000000
- fctiwz. bfe0000000000001 => 0000000000000000
- fctiwz. bfe00094e0000359 => 0000000000000000
- fctiwz. 0000000000000000 => 0000000000000000
- fctiwz. 8000000000000000 => 0000000000000000
- fctiwz. 7ff0000000000000 => 000000007fffffff
- fctiwz. fff0000000000000 => 0000000080000000
- fctiwz. 7ff7ffffffffffff => 0000000080000000
- fctiwz. fff7ffffffffffff => 0000000080000000
- fctiwz. 7ff8000000000000 => 0000000080000000
- fctiwz. fff8000000000000 => 0000000080000000
-
- fmr. 0010000000000001 => 0010000000000001
- fmr. 00100094e0000359 => 00100094e0000359
- fmr. 3fe0000000000001 => 3fe0000000000001
- fmr. 3fe00094e0000359 => 3fe00094e0000359
- fmr. 8010000000000001 => 8010000000000001
- fmr. 80100094e0000359 => 80100094e0000359
- fmr. bfe0000000000001 => bfe0000000000001
- fmr. bfe00094e0000359 => bfe00094e0000359
- fmr. 0000000000000000 => 0000000000000000
<truncated beyond 100 lines>
=================================================
./valgrind-new/none/tests/ppc32/power5+_round.stderr.diff
=================================================
--- power5+_round.stderr.exp 2011-05-17 00:05:57.000000000 -0500
+++ power5+_round.stderr.out 2011-05-17 00:32:59.000000000 -0500
@@ -1,2 +1,20 @@
+disInstr(ppc): unhandled instruction: 0x........
+ primary 63(0x........), secondary 784(0x........)
+valgrind: Unrecognised instruction at address 0x.........
+ at 0x........: main (power5+_round.c:124)
+Your program just tried to execute an instruction that Valgrind
+did not recognise. The...
[truncated message content] |
|
From: Tom H. <th...@cy...> - 2011-05-17 02:54:25
|
Nightly build on vauxhall ( x86_64, Fedora 14 ) Started at 2011-05-17 03:20:03 BST Ended at 2011-05-17 03:53:59 BST 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 == 566 tests, 9 stderr failures, 1 stdout failure, 1 stderrB failure, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) memcheck/tests/linux/stack_switch (stderr) memcheck/tests/origin5-bz2 (stderr) helgrind/tests/tc06_two_races_xml (stderr) drd/tests/pth_detached2 (stdout) exp-sgcheck/tests/bad_percentify (stderr) exp-sgcheck/tests/globalerr (stderr) exp-sgcheck/tests/hackedbz2 (stderr) exp-sgcheck/tests/hsg (stderr) exp-sgcheck/tests/preen_invars (stderr) exp-sgcheck/tests/stackerr (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 == 566 tests, 9 stderr failures, 0 stdout failures, 1 stderrB failure, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) memcheck/tests/linux/stack_switch (stderr) memcheck/tests/origin5-bz2 (stderr) helgrind/tests/tc06_two_races_xml (stderr) exp-sgcheck/tests/bad_percentify (stderr) exp-sgcheck/tests/globalerr (stderr) exp-sgcheck/tests/hackedbz2 (stderr) exp-sgcheck/tests/hsg (stderr) exp-sgcheck/tests/preen_invars (stderr) exp-sgcheck/tests/stackerr (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Tue May 17 03:37:01 2011 --- new.short Tue May 17 03:53:59 2011 *************** *** 8,10 **** ! == 566 tests, 9 stderr failures, 0 stdout failures, 1 stderrB failure, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) --- 8,10 ---- ! == 566 tests, 9 stderr failures, 1 stdout failure, 1 stderrB failure, 1 stdoutB failure, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) *************** *** 14,15 **** --- 14,16 ---- helgrind/tests/tc06_two_races_xml (stderr) + drd/tests/pth_detached2 (stdout) exp-sgcheck/tests/bad_percentify (stderr) |
|
From: Rich C. <rc...@wi...> - 2011-05-17 02:52:55
|
Nightly build on ultra ( gcc 4.5.1 Linux 2.6.37.1-1.2-desktop x86_64 )
Started at 2011-05-16 21:30:01 CDT
Ended at 2011-05-16 21:52:42 CDT
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
== 566 tests, 81 stderr failures, 56 stdout failures, 5 stderrB failures, 0 stdoutB failures, 3 post failures ==
gdbserver_tests/mcbreak (stderrB)
gdbserver_tests/mcclean_after_fork (stderrB)
gdbserver_tests/mcinfcallWSRU (stderrB)
gdbserver_tests/mcvabits (stderrB)
gdbserver_tests/mssnapshot (stderrB)
memcheck/tests/linux/stack_switch (stderr)
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/x86/bug152022 (stderr)
memcheck/tests/x86/espindola2 (stderr)
memcheck/tests/x86/fpeflags (stderr)
memcheck/tests/x86/fprem (stdout)
memcheck/tests/x86/fprem (stderr)
memcheck/tests/x86/fxsave (stdout)
memcheck/tests/x86/fxsave (stderr)
memcheck/tests/x86/insn_basic (stdout)
memcheck/tests/x86/insn_basic (stderr)
memcheck/tests/x86/insn_cmov (stdout)
memcheck/tests/x86/insn_cmov (stderr)
memcheck/tests/x86/insn_fpu (stdout)
memcheck/tests/x86/insn_fpu (stderr)
memcheck/tests/x86/insn_mmx (stdout)
memcheck/tests/x86/insn_mmx (stderr)
memcheck/tests/x86/insn_sse (stdout)
memcheck/tests/x86/insn_sse (stderr)
memcheck/tests/x86/insn_sse2 (stdout)
memcheck/tests/x86/insn_sse2 (stderr)
memcheck/tests/x86/more_x86_fp (stdout)
memcheck/tests/x86/more_x86_fp (stderr)
memcheck/tests/x86/pushfpopf (stdout)
memcheck/tests/x86/pushfpopf (stderr)
memcheck/tests/x86/pushfw_x86 (stdout)
memcheck/tests/x86/pushfw_x86 (stderr)
memcheck/tests/x86/pushpopmem (stdout)
memcheck/tests/x86/pushpopmem (stderr)
memcheck/tests/x86/sse1_memory (stdout)
memcheck/tests/x86/sse1_memory (stderr)
memcheck/tests/x86/sse2_memory (stdout)
memcheck/tests/x86/sse2_memory (stderr)
memcheck/tests/x86/tronical (stderr)
memcheck/tests/x86/xor-undef-x86 (stdout)
memcheck/tests/x86/xor-undef-x86 (stderr)
memcheck/tests/x86-linux/bug133694 (stdout)
memcheck/tests/x86-linux/bug133694 (stderr)
memcheck/tests/x86-linux/int3-x86 (stdout)
memcheck/tests/x86-linux/int3-x86 (stderr)
memcheck/tests/x86-linux/scalar (stderr)
memcheck/tests/x86-linux/scalar_exit_group (stderr)
memcheck/tests/x86-linux/scalar_fork (stderr)
memcheck/tests/x86-linux/scalar_supp (stderr)
memcheck/tests/x86-linux/scalar_vfork (stderr)
cachegrind/tests/x86/fpu-28-108 (stderr)
none/tests/x86/aad_aam (stdout)
none/tests/x86/aad_aam (stderr)
none/tests/x86/badseg (stdout)
none/tests/x86/badseg (stderr)
none/tests/x86/bt_everything (stdout)
none/tests/x86/bt_everything (stderr)
none/tests/x86/bt_literal (stdout)
none/tests/x86/bt_literal (stderr)
none/tests/x86/bug125959-x86 (stdout)
none/tests/x86/bug125959-x86 (stderr)
none/tests/x86/bug126147-x86 (stdout)
none/tests/x86/bug126147-x86 (stderr)
none/tests/x86/bug132813-x86 (stdout)
none/tests/x86/bug132813-x86 (stderr)
none/tests/x86/bug135421-x86 (stdout)
none/tests/x86/bug135421-x86 (stderr)
none/tests/x86/bug137714-x86 (stdout)
none/tests/x86/bug137714-x86 (stderr)
none/tests/x86/bug152818-x86 (stdout)
none/tests/x86/bug152818-x86 (stderr)
none/tests/x86/cmpxchg8b (stdout)
none/tests/x86/cmpxchg8b (stderr)
none/tests/x86/cpuid (stdout)
none/tests/x86/cpuid (stderr)
none/tests/x86/cse_fail (stdout)
none/tests/x86/cse_fail (stderr)
none/tests/x86/fcmovnu (stdout)
none/tests/x86/fcmovnu (stderr)
none/tests/x86/fpu_lazy_eflags (stdout)
none/tests/x86/fpu_lazy_eflags (stderr)
none/tests/x86/fxtract (stdout)
none/tests/x86/fxtract (stderr)
none/tests/x86/getseg (stdout)
none/tests/x86/getseg (stderr)
none/tests/x86/incdec_alt (stdout)
none/tests/x86/incdec_alt (stderr)
none/tests/x86/insn_basic (stdout)
none/tests/x86/insn_basic (stderr)
none/tests/x86/insn_cmov (stdout)
none/tests/x86/insn_cmov (stderr)
none/tests/x86/insn_fpu (stdout)
none/tests/x86/insn_fpu (stderr)
none/tests/x86/insn_mmx (stdout)
none/tests/x86/insn_mmx (stderr)
none/tests/x86/insn_sse (stdout)
none/tests/x86/insn_sse (stderr)
none/tests/x86/insn_sse2 (stdout)
none/tests/x86/insn_sse2 (stderr)
none/tests/x86/insn_sse3 (stdout)
none/tests/x86/insn_sse3 (stderr)
none/tests/x86/insn_ssse3 (stdout)
none/tests/x86/insn_ssse3 (stderr)
none/tests/x86/jcxz (stdout)
none/tests/x86/jcxz (stderr)
none/tests/x86/lahf (stdout)
none/tests/x86/lahf (stderr)
none/tests/x86/looper (stdout)
none/tests/x86/looper (stderr)
none/tests/x86/movx (stdout)
none/tests/x86/movx (stderr)
none/tests/x86/pushpopseg (stdout)
none/tests/x86/pushpopseg (stderr)
none/tests/x86/sbbmisc (stdout)
none/tests/x86/sbbmisc (stderr)
none/tests/x86/shift_ndep (stdout)
none/tests/x86/shift_ndep (stderr)
none/tests/x86/smc1 (stdout)
none/tests/x86/smc1 (stderr)
none/tests/x86/ssse3_misaligned (stderr)
none/tests/x86/x86locked (stdout)
none/tests/x86/x86locked (stderr)
none/tests/x86/xadd (stdout)
none/tests/x86/xadd (stderr)
none/tests/x86-linux/seg_override (stdout)
none/tests/x86-linux/seg_override (stderr)
none/tests/x86-linux/sigcontext (stdout)
none/tests/x86-linux/sigcontext (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
exp-sgcheck/tests/bad_percentify (stderr)
exp-sgcheck/tests/globalerr (stderr)
exp-sgcheck/tests/hackedbz2 (stderr)
exp-sgcheck/tests/hsg (stderr)
exp-sgcheck/tests/preen_invars (stderr)
exp-sgcheck/tests/stackerr (stderr)
exp-bbv/tests/x86/complex_rep (stderr)
exp-bbv/tests/x86/fldcw_check (stderr)
exp-bbv/tests/x86/million (stderr)
exp-bbv/tests/x86/rep_prefix (stderr)
exp-bbv/tests/x86-linux/clone_test (stderr)
exp-bbv/tests/x86-linux/clone_test (post)
exp-bbv/tests/x86-linux/ll (stdout)
exp-bbv/tests/x86-linux/ll (stderr)
=================================================
./valgrind-new/cachegrind/tests/x86/fpu-28-108.stderr.diff
=================================================
--- fpu-28-108.stderr.exp 2011-05-16 21:41:54.971915287 -0500
+++ fpu-28-108.stderr.out 2011-05-16 21:48:10.112872102 -0500
@@ -1,17 +1 @@
-
-
-I refs:
-I1 misses:
-LLi misses:
-I1 miss rate:
-LLi miss rate:
-
-D refs:
-D1 misses:
-LLd misses:
-D1 miss rate:
-LLd miss rate:
-
-LL refs:
-LL misses:
-LL miss rate:
+valgrind: ./fpu-28-108: No such file or directory
=================================================
./valgrind-new/exp-bbv/tests/x86-linux/clone_test.post.diff
=================================================
--- clone_test.post.exp 2011-05-16 21:41:45.440780085 -0500
+++ clone_test.post.out 2011-05-16 21:52:42.628135994 -0500
@@ -1,58 +0,0 @@
-T 4 996 5 2 3 98991
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 1001 2 3 98994
-T 100000
-T 100000
-T 100000
-T 100000
-
-
-# Thread 1
-# Total intervals: 15 (Interval Size 100000)
-# Total instructions: 1501007
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
-
-T 2 3 99996
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 100000
-T 99996 4
-T 100000
-T 100000
-T 100000
-T 100000
-T 99998 2
-
-
-# Thread 2
-# Total intervals: 25 (Interval Size 100000)
-# Total instructions: 2500001
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
-
=================================================
./valgrind-new/exp-bbv/tests/x86-linux/clone_test.stderr.diff
=================================================
--- clone_test.stderr.exp 2011-05-16 21:41:45.440780085 -0500
+++ clone_test.stderr.out 2011-05-16 21:52:42.610137627 -0500
@@ -1,12 +0,0 @@
-# Thread 1
-# Total intervals: 15 (Interval Size 100000)
-# Total instructions: 1501007
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
-# Thread 2
-# Total intervals: 25 (Interval Size 100000)
-# Total instructions: 2500001
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
=================================================
./valgrind-new/exp-bbv/tests/x86-linux/ll.stderr.diff
=================================================
--- ll.stderr.exp 2011-05-16 21:41:45.439780177 -0500
+++ ll.stderr.out 2011-05-16 21:52:42.651133906 -0500
@@ -1,6 +0,0 @@
-# Thread 1
-# Total intervals: 39 (Interval Size 1000)
-# Total instructions: 39439
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
=================================================
./valgrind-new/exp-bbv/tests/x86-linux/ll.stdout.diff
=================================================
--- ll.stdout.exp 2011-05-16 21:41:45.439780177 -0500
+++ ll.stdout.out 2011-05-16 21:52:42.645134452 -0500
@@ -1,17 +0,0 @@
-[0;1;37;47m#################################################################[0;30;47m#####[1;37m#########[1;37;40m
-[0;1;37;47m################################################################[0;30;47m#######[1;37m########[1;37;40m
-[0;1;37;47m###################[31m#[37m############################################[0;30;47m##[1;37mO[0;30;47m#[1;37mO[0;30;47m##[1;37m########[1;37;40m
-[0;1;37;47m##[0;30;47m######[1;37m##########[31m##[0;30;47m#[1;37m###########################################[0;30;47m#[1;33m#####[0;30;47m#[1;37m########[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m#############[0;30;47m#[1;37m##########################################[0;30;47m##[1;37m##[33m###[37m##[0;30;47m##[1;37m######[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m#########[31m###[37m###[0;30;47m###[1;37m#[0;30;47m####[1;37m###[0;30;47m###[1;37m####[0;30;47m###[1;37m##[0;30;47m#####[1;37m#[0;30;47m######[1;37m#####[0;30;47m#[1;37m##########[0;30;47m##[1;37m#####[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m########[31m#[37m##[31m#[0;30;47m#[1;37m###[0;30;47m###[1;37m####[0;30;47m##[1;37m##[0;30;47m##[1;37m#####[0;30;47m##[1;37m####[0;30;47m##[1;37m###[0;30;47m##[1;37m#######[0;30;47m#[1;37m############[0;30;47m##[1;37m####[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m#######[31m#[37m###[31m#[0;30;47m#[1;37m###[0;30;47m##[1;37m#####[0;30;47m##[1;37m##[0;30;47m##[1;37m#####[0;30;47m##[1;37m######[0;30;47m###[1;37m#########[0;30;47m#[1;37m############[0;30;47m###[1;37m###[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m##########[31m##[0;30;47m#[1;37m###[0;30;47m##[1;37m#####[0;30;47m##[1;37m##[0;30;47m##[1;37m#####[0;30;47m##[1;37m######[0;30;47m###[1;37m########[33m##[0;30;47m#[1;37m###########[0;30;47m##[1;33m#[37m###[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m#######[0;30;47m#[1;37m#[31m##[0;30;47m#[1;37m####[0;30;47m##[1;37m#####[0;30;47m##[1;37m##[0;30;47m##[1;37m#####[0;30;47m##[1;37m#####[0;30;47m##[1;37m#[0;30;47m##[1;37m#####[33m######[0;30;47m#[1;37m#######[30m#[33m######[37m#[1;37;40m
-[0;1;37;47m####[0;30;47m##[1;37m######[0;30;47m##[1;37m#[31m##[0;30;47m#[1;37m#[0;30;47m#[1;37m##[0;30;47m##[1;37m#####[0;30;47m##[1;37m##[0;30;47m###[1;37m###[0;30;47m###[1;37m####[0;30;47m##[1;37m###[0;30;47m##[1;37m####[33m#######[0;30;47m#[1;37m#####[0;30;47m#[1;33m#######[37m#[1;37;40m
-[0;1;37;47m##[0;30;47m############[1;37m##[0;30;47m###[1;37m##[0;30;47m####[1;37m###[0;30;47m####[1;37m###[0;30;47m####[1;37m#[0;30;47m###[1;37m#[0;30;47m#####[1;37m#[0;30;47m######[1;37m###[33m#####[30m#[0;30;47m#####[1m#[33m#####[37m###[1;37;40m
-
-[7CLinux Version 2.6.29, Compiled #1 SMP Mon May 4 09:51:54 EDT 2009
-[5COne 1665MHz AMD Athlon(tm) Processor, 512M RAM, 3330.53 Bogomips Total
-[37Ctobler[0m
-
=================================================
./valgrind-new/exp-bbv/tests/x86/complex_rep.stderr.diff
=================================================
--- complex_rep.stderr.exp 2011-05-16 21:41:45.623763490 -0500
+++ complex_rep.stderr.out 2011-05-16 21:52:42.512146523 -0500
@@ -1,6 +0,0 @@
-# Thread 1
-# Total intervals: 0 (Interval Size 100000)
-# Total instructions: 8206
-# Total reps: 2100228
-# Unique reps: 2052
-# Total fldcw instructions: 0
=================================================
./valgrind-new/exp-bbv/tests/x86/fldcw_check.stderr.diff
=================================================
--- fldcw_check.stderr.exp 2011-05-16 21:41:45.623763490 -0500
+++ fldcw_check.stderr.out 2011-05-16 21:52:42.535144436 -0500
@@ -1,6 +0,0 @@
-# Thread 1
-# Total intervals: 0 (Interval Size 10000)
-# Total instructions: 9261
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 2061
=================================================
./valgrind-new/exp-bbv/tests/x86/million.stderr.diff
=================================================
--- million.stderr.exp 2011-05-16 21:41:45.622763587 -0500
+++ million.stderr.out 2011-05-16 21:52:42.558142348 -0500
@@ -1,6 +0,0 @@
-# Thread 1
-# Total intervals: 10 (Interval Size 100000)
-# Total instructions: 1000000
-# Total reps: 0
-# Unique reps: 0
-# Total fldcw instructions: 0
=================================================
./valgrind-new/exp-bbv/tests/x86/rep_prefix.stderr.diff
=================================================
--- rep_prefix.stderr.exp 2011-05-16 21:41:45.622763587 -0500
+++ rep_prefix.stderr.out 2011-05-16 21:52:42.582140170 -0500
@@ -1,6 +0,0 @@
-# Thread 1
-# Total intervals: 0 (Interval Size 100000)
-# Total instructions: 124
-# Total reps: 229402
-# Unique reps: 26
-# Total fldcw instructions: 0
=================================================
./valgrind-new/exp-sgcheck/tests/bad_percentify.stderr.diff-glibc28-amd64
=================================================
--- bad_percentify.stderr.exp-glibc28-amd64 2011-05-16 21:42:07.569772224 -0500
+++ bad_percentify.stderr.out 2011-05-16 21:52:33.608954738 -0500
@@ -1,33 +1,34 @@
+exp-sgcheck, a stack and global array overrun detector
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:88)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" of size 6 in frame 2 back from here
Actual: unknown
+ Actual: is 0 after Expected
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:93)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" of size 6 in frame 2 back from here
Actual: unknown
+ Actual: is 0 after Expected
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:98)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" of size 6 in frame 2 back from here
Actual: unknown
+ Actual: is 0 after Expected
ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/exp-sgcheck/tests/globalerr.stderr.diff-glibc28-amd64
=================================================
--- globalerr.stderr.exp-glibc28-amd64 2011-05-16 21:42:07.567772385 -0500
+++ globalerr.stderr.out 2011-05-16 21:52:34.533870775 -0500
@@ -1,15 +1,18 @@
+exp-sgcheck, a stack and global array overrun detector
Invalid read of size 2
at 0x........: main (globalerr.c:12)
Address 0x........ expected vs actual:
- Expected: global array "a" in object with soname "NONE"
+ Expected: global array "a" of size 14 in object with soname "NONE"
Actual: unknown
+ Actual: is 0 after Expected
Invalid read of size 2
at 0x........: main (globalerr.c:12)
Address 0x........ expected vs actual:
- Expected: global array "b" in object with soname "NONE"
+ Expected: global array "b" of size 14 in object with soname "NONE"
Actual: unknown
+ Actual: is 0 after Expected
ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/exp-sgcheck/tests/hackedbz2.stderr.diff-glibc28-amd64
=================================================
--- hackedbz2.stderr.exp-glibc28-amd64 2011-05-16 21:42:07.566772470 -0500
+++ hackedbz2.stderr.out 2011-05-16 21:52:38.973467758 -0500
@@ -1,3 +1,4 @@
+exp-sgcheck, a stack and global array overrun detector
Invalid read of size 1
at 0x........: vex_strlen (hackedbz2.c:1006)
@@ -9,8 +10,9 @@
by 0x........: BZ2_bzBuffToBuffCompress (hackedbz2.c:5638)
by 0x........: main (hackedbz2.c:6484)
Address 0x........ expected vs actual:
- Expected: global array "myprintf_buf" in object with soname "NONE"
+ Expected: global array "myprintf_buf" of size 70 in object with soname "NONE"
Actual: unknown
+ Actual: is 0 after Expected
ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/exp-sgcheck/tests/hsg.stderr.diff
=================================================
--- hsg.stderr.exp 2011-05-16 21:42:07.569772224 -0500
+++ hsg.stderr.out 2011-05-16 21:52:39.914382343 -0500
@@ -3,7 +3,7 @@
<valgrindoutput>
<protocolversion>4</protocolversion>
-<protocoltool>exp-ptrcheck</protocoltool>
+<protocoltool>exp-sgcheck</protocoltool>
<preamble>
<line>...</line>
@@ -15,7 +15,7 @@
<pid>...</pid>
<ppid>...</ppid>
-<tool>exp-ptrcheck</tool>
+<tool>exp-sgcheck</tool>
<args>
<vargv>...</vargv>
@@ -53,7 +53,7 @@
</frame>
</stack>
<auxwhat>Address 0x........ expected vs actual:</auxwhat>
- <auxwhat>Expected: global array "ga" in object with soname "NONE"</auxwhat>
+ <auxwhat>Expected: global array "ga" of size 200 in object with soname "NONE"</auxwhat>
<auxwhat>Actual: unknown</auxwhat>
</error>
@@ -89,116 +89,10 @@
</frame>
</stack>
<auxwhat>Address 0x........ expected vs actual:</auxwhat>
- <auxwhat>Expected: stack array "la" in frame 1 back from here</auxwhat>
+ <auxwhat>Expected: stack array "la" of size 200 in frame 1 back from here</auxwhat>
<auxwhat>Actual: unknown</auxwhat>
</error>
-<error>
- <unique>0x........</unique>
- <tid>...</tid>
- <kind>Heap</kind>
- <what>Invalid read of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>do_stupid_malloc_stuff</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>main</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- </stack>
- <auxwhat>Address 0x........ is 1 bytes before the accessing pointer's</auxwhat>
- <auxwhat>legitimate range, a block of size 100 alloc'd</auxwhat>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>malloc</fn>
- <dir>...</dir>
- <file>vg_replace_malloc.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>do_stupid_malloc_stuff</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>main</fn>
- <dir>...</dir>
- <file>hsg.c</file>
- <line>...</line>
- </frame>
- </stack>
-</error>
-
-<error>
- <unique>0x........</unique>
- <tid>...</tid>
- <kind>Heap</kind>
- <what>Invalid read of size 1</what>
- <stack>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
<truncated beyond 100 lines>
=================================================
./valgrind-new/exp-sgcheck/tests/preen_invars.stderr.diff-glibc28-amd64
=================================================
--- preen_invars.stderr.exp-glibc28-amd64 2011-05-16 21:42:07.565772552 -0500
+++ preen_invars.stderr.out 2011-05-16 21:52:40.887294024 -0500
@@ -1,9 +1,10 @@
+exp-sgcheck, a stack and global array overrun detector
Invalid read of size 1
at 0x........: main (preen_invars.c:22)
Address 0x........ expected vs actual:
Expected: unknown
- Actual: global array "im_a_global_arr" in object with soname "preen_invars_so"
+ Actual: global array "im_a_global_arr" of size 10 in object with soname "preen_invars_so"
ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/exp-sgcheck/tests/stackerr.stderr.diff-glibc27-x86
=================================================
--- stackerr.stderr.exp-glibc27-x86 2011-05-16 21:42:07.564772636 -0500
+++ stackerr.stderr.out 2011-05-16 21:52:41.820209336 -0500
@@ -1,17 +1,20 @@
+exp-sgcheck, a stack and global array overrun detector
-Invalid write of size 4
+Invalid write of size 8
at 0x........: foo (stackerr.c:27)
by 0x........: bar (stackerr.c:32)
by 0x........: main (stackerr.c:41)
Address 0x........ expected vs actual:
- Expected: stack array "a" in frame 2 back from here
- Actual: stack array "beforea" in frame 2 back from here
+ Expected: stack array "a" of size 56 in frame 2 back from here
+ Actual: unknown
+ Actual: is 0 after Expected
-Invalid write of size 4
+Invalid write of size 8
at 0x........: main (stackerr.c:44)
Address 0x........ expected vs actual:
- Expected: stack array "a" in this frame
- Actual: stack array "beforea" in this frame
+ Expected: stack array "a" of size 56 in this frame
+ Actual: unknown
+ Actual: is 0 after Expected
Invalid write of size 1
at 0x........: _IO_default_xsputn (in /...libc...)
@@ -20,8 +23,9 @@
by 0x........: ...
by 0x........: main (stackerr.c:49)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 4 back from here
- Actual: stack array "beforebuf" in frame 4 back from here
+ Expected: stack array "buf" of size 8 in frame 4 back from here
+ Actual: unknown
+ Actual: is 0 after Expected
ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/exp-sgcheck/tests/stackerr.stderr.diff-glibc28-amd64
=================================================
--- stackerr.stderr.exp-glibc28-amd64 2011-05-16 21:42:07.568772301 -0500
+++ stackerr.stderr.out 2011-05-16 21:52:41.820209336 -0500
@@ -1,17 +1,20 @@
+exp-sgcheck, a stack and global array overrun detector
Invalid write of size 8
at 0x........: foo (stackerr.c:27)
by 0x........: bar (stackerr.c:32)
by 0x........: main (stackerr.c:41)
Address 0x........ expected vs actual:
- Expected: stack array "a" in frame 2 back from here
+ Expected: stack array "a" of size 56 in frame 2 back from here
Actual: unknown
+ Actual: is 0 after Expected
Invalid write of size 8
at 0x........: main (stackerr.c:44)
Address 0x........ expected vs actual:
- Expected: stack array "a" in this frame
+ Expected: stack array "a" of size 56 in this frame
Actual: unknown
+ Actual: is 0 after Expected
Invalid write of size 1
at 0x........: _IO_default_xsputn (in /...libc...)
@@ -20,8 +23,9 @@
by 0x........: ...
by 0x........: main (stackerr.c:49)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 4 back from here
+ Expected: stack array "buf" of size 8 in frame 4 back from here
Actual: unknown
+ Actual: is 0 after Expected
ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/gdbserver_tests/mcbreak.stderrB.diff
=================================================
--- mcbreak.stderrB.exp 2011-05-16 21:41:46.245707048 -0500
+++ mcbreak.stderrB.out 2011-05-16 21:45:30.725337359 -0500
@@ -1,5 +1,11 @@
relaying data between gdb and process ....
+Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2
+Try: zypper install -C "debuginfo(build-id)=b1d398a5cb1609e7ac1c51a26588e87fc20f753c"
vgdb-error value changed from 0 to 999999
+Missing separate debuginfo for /lib64/libpthread.so.0
+Try: zypper install -C "debuginfo(build-id)=e23cbc772e670af00bea9874f925e2e61afda713"
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=1493bf69b1d671cbad9be1d1b0284fbd9138444b"
vgdb-error value changed from 999999 to 0
n_errs_found 1 (vgdb-error 0)
vgdb-error value changed from 0 to 0
=================================================
./valgrind-new/gdbserver_tests/mcclean_after_fork.stderrB.diff
=================================================
--- mcclean_after_fork.stderrB.exp 2011-05-16 21:41:46.245707048 -0500
+++ mcclean_after_fork.stderrB.out 2011-05-16 21:45:32.276196618 -0500
@@ -1,4 +1,10 @@
relaying data between gdb and process ....
+Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2
+Try: zypper install -C "debuginfo(build-id)=b1d398a5cb1609e7ac1c51a26588e87fc20f753c"
vgdb-error value changed from 0 to 999999
+Missing separate debuginfo for /lib64/libpthread.so.0
+Try: zypper install -C "debuginfo(build-id)=e23cbc772e670af00bea9874f925e2e61afda713"
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=1493bf69b1d671cbad9be1d1b0284fbd9138444b"
monitor command request to kill this process
Remote connection closed
=================================================
./valgrind-new/gdbserver_tests/mcinfcallWSRU.stderrB.diff
=================================================
--- mcinfcallWSRU.stderrB.exp 2011-05-16 21:41:46.246706957 -0500
+++ mcinfcallWSRU.stderrB.out 2011-05-16 21:45:56.120032774 -0500
@@ -2,6 +2,10 @@
vgdb-error value changed from 0 to 999999
Breakpoint 1 at 0x........: file sleepers.c, line 72.
Continuing.
+Missing separate debuginfo for /lib64/libpthread.so.0
+Try: zypper install -C "debuginfo(build-id)=e23cbc772e670af00bea9874f925e2e61afda713"
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=1493bf69b1d671cbad9be1d1b0284fbd9138444b"
[New Thread ....]
Breakpoint 1, sleeper_or_burner (v=0x........) at sleepers.c:72
72 int i = 0;
=================================================
./valgrind-new/gdbserver_tests/mcvabits.stderrB.diff
=================================================
--- mcvabits.stderrB.exp 2011-05-16 21:41:46.248706777 -0500
+++ mcvabits.stderrB.out 2011-05-16 21:46:10.835697296 -0500
@@ -1,5 +1,11 @@
relaying data between gdb and process ....
+Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2
+Try: zypper install -C "debuginfo(build-id)=b1d398a5cb1609e7ac1c51a26588e87fc20f753c"
vgdb-error value changed from 0 to 999999
+Missing separate debuginfo for /lib64/libpthread.so.0
+Try: zypper install -C "debuginfo(build-id)=e23cbc772e670af00bea9874f925e2e61afda713"
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=1493bf69b1d671cbad9be1d1b0284fbd9138444b"
Address 0x........ len 10 addressable
Address 0x........ is 0 bytes inside data symbol "undefined"
Address 0x........ len 10 defined
=================================================
./valgrind-new/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2011-05-16 21:41:46.247706867 -0500
+++ mssnapshot.stderrB.out 2011-05-16 21:46:13.757432142 -0500
@@ -1,5 +1,11 @@
relaying data between gdb and process ....
+Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2
+Try: zypper install -C "debuginfo(build-id)=b1d398a5cb1609e7ac1c51a26588e87fc20f753c"
vgdb-error value changed from 0 to 999999
+Missing separate debuginfo for /lib64/libpthread.so.0
+Try: zypper install -C "debuginfo(build-id)=e23cbc772e670af00bea9874f925e2e61afda713"
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=1493bf69b1d671cbad9be1d1b0284fbd9138444b"
general valgrind monitor commands:
help [debug] : monitor command help. With debug: + debugging commands
vg.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-new/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2011-05-16 21:41:43.597947291 -0500
+++ tc06_two_races_xml.stderr.out 2011-05-16 21:50:03.457584431 -0500
@@ -44,7 +44,7 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>do_clone</fn>
+ <fn>do_clone.clone.0</fn>
</frame>
<frame>
<ip>0x........</ip>
@@ -122,11 +122,6 @@
<obj>...</obj>
<fn>start_thread</fn>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>clone</fn>
- </frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
<xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>...</line> </xauxwhat>
@@ -176,11 +171,6 @@
<obj>...</obj>
<fn>start_thread</fn>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>clone</fn>
- </frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
<xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>...</line> </xauxwhat>
@@ -230,11 +220,6 @@
<obj>...</obj>
<fn>start_thread</fn>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>clone</fn>
- </frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
<xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>...</line> </xauxwhat>
@@ -284,11 +269,6 @@
<obj>...</obj>
<fn>start_thread</fn>
</frame>
- <frame>
- <ip>0x........</ip>
- <obj>...</obj>
- <fn>clone</fn>
- </frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
<xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>...</line> </xauxwhat>
=================================================
./valgrind-new/memcheck/tests/linux/stack_switch.stderr.diff
=================================================
--- stack_switch.stderr.exp 2011-05-16 21:41:50.286340427 -0500
+++ stack_switch.stderr.out 2011-05-16 21:47:09.677357146 -0500
@@ -0,0 +1,3 @@
+Syscall param clone(child_tidptr) contains uninitialised byte(s)
+ ...
+
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2011-05-16 21:41:51.369242170 -0500
+++ origin5-bz2.stderr.out 2011-05-16 21:47:29.771533453 -0500
@@ -72,17 +72,6 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
- 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:6479)
-
-Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -128,6 +117,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2011-05-16 21:41:51.325246162 -0500
+++ origin5-bz2.stderr.out 2011-05-16 21:47:29.771533453 -0500
@@ -117,6 +117,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2011-05-16 21:41:51.382240992 -0500
+++ origin5-bz2.stderr.out 2011-05-16 21:47:29.771533453 -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 4
+Use of uninitialised value of size 8
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 4
+Use of uninitialised value of size 8
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,8 +27,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+Use of uninitialised value of size 8
+ 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)
@@ -37,8 +38,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+Use of uninitialised value of size 8
+ 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)
@@ -47,8 +49,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2855)
+Use of uninitialised value of size 8
+ 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)
@@ -57,8 +60,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2859)
+Use of uninitialised value of size 8
+ 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)
@@ -67,8 +71,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+Use of uninitialised value of size 8
+ 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)
@@ -77,8 +82,9 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2964)
+Use of uninitialised value of size 8
+ 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)
@@ -87,7 +93,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2011-05-16 21:41:51.322246435 -0500
+++ origin5-bz2.stderr.out 2011-05-16 21:47:29.771533453 -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,7 +9,7 @@
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........: handle_compress (origin5-bz2.c:4686)
@@ -17,7 +17,7 @@
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........: handle_compress (origin5-bz2.c:4686)
@@ -25,7 +25,7 @@
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........: mainSort (origin5-bz2.c:2820)
@@ -36,7 +36,7 @@
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........: mainSort (origin5-bz2.c:2823)
@@ -47,7 +47,7 @@
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........: mainSort (origin5-bz2.c:2854)
@@ -58,7 +58,7 @@
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........: mainSort (origin5-bz2.c:2858)
@@ -69,7 +69,7 @@
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........: mainSort (origin5-bz2.c:2963)
@@ -80,7 +80,7 @@
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........: mainSort (origin5-bz2.c:2964)
@@ -91,7 +91,7 @@
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........: fallbackSort (origin5-bz2.c:2269)
@@ -102,7 +102,7 @@
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
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86-linux/bug133694.stderr.diff
=================================================
--- bug133694.stderr.exp 2011-05-16 21:41:47.360605891 -0500
+++ bug133694.stderr.out 2011-05-16 21:48:08.467021479 -0500
@@ -0,0 +1 @@
+valgrind: ./bug133694: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86-linux/bug133694.stdout.diff
=================================================
--- bug133694.stdout.exp 2011-05-16 21:41:47.354606436 -0500
+++ bug133694.stdout.out 2011-05-16 21:48:08.448023202 -0500
@@ -1 +0,0 @@
-success
=================================================
./valgrind-new/memcheck/tests/x86-linux/int3-x86.stderr.diff
=================================================
--- int3-x86.stderr.exp 2011-05-16 21:41:47.357606164 -0500
+++ int3-x86.stderr.out 2011-05-16 21:48:08.493019119 -0500
@@ -0,0 +1 @@
+valgrind: ./int3-x86: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86-linux/int3-x86.stdout.diff
=================================================
--- int3-x86.stdout.exp 2011-05-16 21:41:47.361605800 -0500
+++ int3-x86.stdout.out 2011-05-16 21:48:08.473020934 -0500
@@ -1,3 +0,0 @@
-main
-in int_handler, EIP is ...
-PASS
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar.stderr.diff
=================================================
--- scalar.stderr.exp 2011-05-16 21:41:47.359605982 -0500
+++ scalar.stderr.out 2011-05-16 21:48:08.517016941 -0500
@@ -1,3275 +1 @@
------------------------------------------------------
- 0:__NR_restart_syscall n/a
------------------------------------------------------
------------------------------------------------------
- 1: __NR_exit below
------------------------------------------------------
------------------------------------------------------
- 2: __NR_fork other
------------------------------------------------------
------------------------------------------------------
- 3: __NR_read 1+3s 1m
------------------------------------------------------
-Syscall param (syscallno) contains uninitialised byte(s)
- ...
-
-Syscall param read(fd) contains uninitialised byte(s)
- ...
-
-Syscall param read(buf) contains uninitialised byte(s)
- ...
-
-Syscall param read(count) contains uninitialised byte(s)
- ...
-
-Syscall param read(buf) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
-
------------------------------------------------------
- 4: __NR_write 3s 1m
------------------------------------------------------
-Syscall param write(fd) contains uninitialised byte(s)
- ...
-
-Syscall param write(buf) contains uninitialised byte(s)
- ...
-
-Syscall param write(count) contains uninitialised byte(s)
- ...
-
-Syscall param write(buf) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
-
------------------------------------------------------
- 5: __NR_open (2-args) 2s 1m
------------------------------------------------------
-Syscall param open(filename) contains uninitialised byte(s)
- ...
-
-Syscall param open(flags) contains uninitialised byte(s)
- ...
-
-Syscall param open(filename) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
-
------------------------------------------------------
- 5: __NR_open (3-args) 1s 0m
------------------------------------------------------
-Syscall param open(mode) contains uninitialised byte(s)
- ...
-
------------------------------------------------------
- 6: __NR_close 1s 0m
------------------------------------------------------
-Syscall param close(fd) contains uninitialised byte(s)
- ...
-
------------------------------------------------------
- 7: __NR_waitpid 3s 1m
------------------------------------------------------
-Syscall param waitpid(pid) contains uninitialised byte(s)
- ...
-
-Syscall param waitpid(status) contains uninitialised byte(s)
- ...
-
-Syscall param waitpid(options) contains uninitialised byte(s)
- ...
-
-Syscall param waitpid(status) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
-
------------------------------------------------------
- 8: __NR_creat 2s 1m
------------------------------------------------------
-Syscall param creat(pathname) contains uninitialised byte(s)
- ...
-
-Syscall param creat(mode) contains uninitialised byte(s)
- ...
-
-Syscall param creat(pathname) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar_exit_group.stderr.diff
=================================================
--- scalar_exit_group.stderr.exp 2011-05-16 21:41:47.360605891 -0500
+++ scalar_exit_group.stderr.out 2011-05-16 21:48:08.545014400 -0500
@@ -1,6 +1 @@
------------------------------------------------------
-252: __NR_exit_group 1s 0m
------------------------------------------------------
-Syscall param exit_group(status) contains uninitialised byte(s)
- ...
-
+valgrind: ./scalar_exit_group: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar_fork.stderr.diff
=================================================
--- scalar_fork.stderr.exp 2011-05-16 21:41:47.355606346 -0500
+++ scalar_fork.stderr.out 2011-05-16 21:48:08.573011860 -0500
@@ -1,3 +1 @@
------------------------------------------------------
- 2: __NR_fork 0e
------------------------------------------------------
+valgrind: ./scalar_fork: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar_supp.stderr.diff
=================================================
--- scalar_supp.stderr.exp 2011-05-16 21:41:47.360605891 -0500
+++ scalar_supp.stderr.out 2011-05-16 21:48:08.598009591 -0500
@@ -1,9 +1 @@
-Syscall param (syscallno) contains uninitialised byte(s)
- ...
-
-Syscall param write(fd) contains uninitialised byte(s)
- ...
-
-Syscall param write(count) contains uninitialised byte(s)
- ...
-
+valgrind: ./scalar_supp: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar_vfork.stderr.diff
=================================================
--- scalar_vfork.stderr.exp 2011-05-16 21:41:47.361605800 -0500
+++ scalar_vfork.stderr.out 2011-05-16 21:48:08.625007140 -0500
@@ -1,3 +1 @@
------------------------------------------------------
-190: __NR_vfork 0e
------------------------------------------------------
+valgrind: ./scalar_vfork: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/bug152022.stderr.diff
=================================================
--- bug152022.stderr.exp 2011-05-16 21:41:51.293249159 -0500
+++ bug152022.stderr.out 2011-05-16 21:48:07.957067762 -0500
@@ -0,0 +1 @@
+valgrind: ./bug152022: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/espindola2.stderr.diff
=================================================
--- espindola2.stderr.exp 2011-05-16 21:41:51.298248641 -0500
+++ espindola2.stderr.out 2011-05-16 21:48:07.981065584 -0500
@@ -0,0 +1 @@
+valgrind: ./espindola2: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/fpeflags.stderr.diff
=================================================
--- fpeflags.stderr.exp 2011-05-16 21:41:51.300248447 -0500
+++ fpeflags.stderr.out 2011-05-16 21:48:08.007063224 -0500
@@ -0,0 +1 @@
+valgrind: ./fpeflags: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/fprem.stderr.diff
=================================================
--- fprem.stderr.exp 2011-05-16 21:41:51.293249159 -0500
+++ fprem.stderr.out 2011-05-16 21:48:08.033060865 -0500
@@ -0,0 +1 @@
+valgrind: ./fprem: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/fprem.stdout.diff
=================================================
--- fprem.stdout.exp 2011-05-16 21:41:51.292249264 -0500
+++ fprem.stdout.out 2011-05-16 21:48:08.013062681 -0500
@@ -1,3 +0,0 @@
-fprem 0.693147
-fprem1 0.693147
-fsincos 0.130278
=================================================
./valgrind-new/memcheck/tests/x86/fxsave.stderr.diff
=================================================
--- fxsave.stderr.exp 2011-05-16 21:41:51.301248349 -0500
+++ fxsave.stderr.out 2011-05-16 21:48:08.058058597 -0500
@@ -0,0 +1 @@
+valgrind: ./fxsave: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/fxsave.stdout.diff
=================================================
--- fxsave.stdout.exp 2011-05-16 21:41:51.299248542 -0500
+++ fxsave.stdout.out 2011-05-16 21:48:08.039060321 -0500
@@ -1,104 +0,0 @@
-Re-run with any arg to suppress least-significant
- 16 bits of FP numbers
-
-BEFORE
- 0 7f 03 00 10 fc 00 00 00 00 00 00 00 00 00 00 00
- 16 00 00 00 00 00 00 00 00 80 1f 00 00 ff ff ff ff
- 32 xx xx 00 00 00 00 00 80 ff 3f 00 00 00 00 00 00
- 48 xx xx 68 21 a2 da 0f c9 00 40 00 00 00 00 00 00
- 64 xx xx cf fb 84 9a 20 9a fd 3f 00 00 00 00 00 00
- 80 xx xx cf d1 f7 17 72 b1 fe 3f 00 00 00 00 00 00
- 96 xx xx 00 00 00 00 00 80 ff 3f 00 00 00 00 00 00
-112 xx xx 68 21 a2 da 0f c9 00 40 00 00 00 00 00 00
-128 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-144 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-160 78 56 34 12 44 33 22 11 88 77 66 55 21 43 65 87
-176 01 ef cd ab dd cc bb aa 11 00 ff ee ba dc fe 10
-192 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-208 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-224 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-256 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-272 79 b9 f9 b9 99 ff 99 bb 99 77 99 bb 9b 9f 9b 97
-288 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-304 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-320 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-336 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-352 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-368 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-384 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-400 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-416 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-432 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-448 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-464 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-480 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-496 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-
-ZEROED
- 0 7f 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 16 00 00 00 00 00 00 00 00 80 1f 00 00 ff ff ff ff
- 32 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 48 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 64 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 80 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
- 96 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-112 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-128 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-144 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-176 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-192 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-208 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-224 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-256 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-272 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-288 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-304 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-320 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-336 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-352 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-368 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-384 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-400 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-416 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-432 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-448 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-464 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-480 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-496 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-
-RESTORED
- 0 7f 03 00 10 fc 00 00 00 00 00 00 00 00 00 00 00
- 16 00 00 00 00 00 00 00 00 80 1f 00 00 ff ff ff ff
- 32 xx xx 00 00 00 00 00 80 ff 3f 00 00 00 00 00 00
- 48 xx xx 68 21 a2 da 0f c9 00 40 00 00 00 00 00 00
- 64 xx xx cf fb 84 9a 20 9a fd 3f 00 00 00 00 00 00
- 80 xx xx cf d1 f7 17 72 b1 fe 3f 00 00 00 00 00 00
- 96 xx xx 00 00 00 00 00 80 ff 3f 00 00 00 00 00 00
-112 xx xx 68 21 a2 da 0f c9 00 40 00 00 00 00 00 00
-128 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-144 xx xx 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-160 78 56 34 12 44 33 22 11 88 77 66 55 21 43 65 87
-176 01 ef cd ab dd cc bb aa 11 00 ff ee ba dc fe 10
-192 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-208 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-224 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-256 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-272 79 b9 f9 b9 99 ff 99 bb 99 77 99 bb 9b 9f 9b 97
-288 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-304 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-320 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-336 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-352 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-368 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
-384 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/x86/insn_basic.stderr.diff
=================================================
--- insn_basic.stderr.exp 2011-05-16 21:42:06.859836637 -0500
+++ insn_basic.stderr.out 2011-05-16 21:48:08.083056329 -0500
@@ -0,0 +1 @@
+valgrind: ./../../../none/tests/x86/insn_basic: No such file or directory
=================================================
./valgrind-new/memcheck/tests/x86/insn_basic.stdout.diff
=================================================
--- insn_basic.stdout.exp 2011-05-16 21:42:06.872835458 -0500
+++ insn_basic.stdout.out 2011-05-16 21:48:08.064058052 -0500
@@ -1,1056 +0,0 @@
-adcb_1 ... ok
-adcb_2 ... ok
-adcb_3 ... ok
-adcb_4 ... ok
-adcb_5 ... ok
-adcb_6 ... ok
-adcb_7 ... ok
-adcb_8 ... ok
-adcb_9 ... ok
-adcb_10 ... ok
-adcb_11 ... ok
-adcb_12 ... ok
-adcw_1 ... ok
-adcw_2 ... ok
-adcw_3 ... ok
-adcw_4 ... ok
-adcw_5 ... ok
-adcw_6 ... ok
-adcw_7 ... ok
-adcw_8 ... ok
-adcw_9 ... ok
-adcw_10 ... ok
-adcw_11 ... ok
-adcw_12 ... ok
-adcw_13 ... ok
-adcw_14 ... ok
-adcl_1 ... ok
-adcl_2 ... ok
-adcl_3 ... ok
-adcl_4 ... ok
-adcl_5 ... ok
-adcl_6 ... ok
-adcl_7 ... ok
-adcl_8 ... ok
-adcl_9 ... ok
-adcl_10 ... ok
-adcl_11 ... ok
-adcl_12 ... ok
-adcl_13 ... ok
-adcl_14 ... ok
-addb_1 ... ok
-addb_2 ... ok
-addb_3 ... ok
-addb_4 ... ok
-addb_5 ... ok
-addb_6 ... ok
-addw_1 ... ok
-addw_2 ... ok
-addw_3 ... ok
-addw_4 ... ok
-addw_5 ... ok
-addw_6 ... ok
-addw_7 ... ok
-addl_1 ... ok
-addl_2 ... ok
-addl_3 ... ok
-addl_4 ... ok
-addl_5 ... ok
-addl_6 ... ok
-addl_7 ... ok
-andb_1 ... ok
-andb_2 ... ok
-andb_3 ... ok
-andb_4 ... ok
-andb_5 ... ok
-andb_6 ... ok
-andw_1 ... ok
-andw_2 ... ok
-andw_3 ... ok
-andw_4 ... ok
-andw_5 ... ok
-andw_6 ... ok
-andw_7 ... ok
-andl_1 ... ok
-andl_2 ... ok
-andl_3 ... ok
-andl_4 ... ok
-andl_5 ... ok
-andl_6 ... ok
-an...
[truncated message content] |
|
From: Tom H. <th...@cy...> - 2011-05-17 02:40:39
|
Nightly build on mg ( x86_64, Fedora 9 ) Started at 2011-05-17 03:10:05 BST Ended at 2011-05-17 03:40:10 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 == 569 tests, 10 stderr failures, 4 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcclean_after_fork (stderr) gdbserver_tests/mcclean_after_fork (stdoutB) gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/mcwatchpoints (stdoutB) none/tests/amd64/bug132918 (stdout) none/tests/amd64/fxtract (stdout) none/tests/amd64/sse4-64 (stdout) none/tests/x86/fxtract (stdout) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc23_bogus_condwait (stderr) exp-sgcheck/tests/bad_percentify (stderr) exp-sgcheck/tests/globalerr (stderr) exp-sgcheck/tests/hackedbz2 (stderr) exp-sgcheck/tests/hsg (stderr) exp-sgcheck/tests/preen_invars (stderr) exp-sgcheck/tests/stackerr (stderr) |