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
(8) |
2
(7) |
3
|
4
|
5
(2) |
6
|
|
7
(1) |
8
(18) |
9
(11) |
10
(9) |
11
(16) |
12
(20) |
13
(17) |
|
14
(11) |
15
(16) |
16
(11) |
17
(11) |
18
(12) |
19
(12) |
20
(9) |
|
21
(5) |
22
(3) |
23
(6) |
24
(12) |
25
(6) |
26
(2) |
27
(1) |
|
28
|
29
(1) |
30
(3) |
31
(7) |
|
|
|
|
From: Christian B. <bor...@de...> - 2011-08-18 20:29:40
|
Nightly build on sless390 ( SUSE Linux Enterprise Server 11 SP1 gcc 4.3.4 on z196 (s390x) ) Started at 2011-08-18 22:05:01 CEST Ended at 2011-08-18 22:29:31 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 == 495 tests, 16 stderr failures, 1 stdout failure, 6 stderrB failures, 0 stdoutB failures, 1 post failure == gdbserver_tests/mcbreak (stderrB) gdbserver_tests/mcclean_after_fork (stderrB) gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/mcleak (stderrB) gdbserver_tests/mssnapshot (stderrB) gdbserver_tests/nlpasssigalrm (stderrB) memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/linux/timerfd-syscall (stderr) memcheck/tests/sbfragment (stdout) massif/tests/big-alloc (post) none/tests/faultstatus (stderr) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc18_semabuse (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 == 495 tests, 17 stderr failures, 0 stdout failures, 6 stderrB failures, 0 stdoutB failures, 0 post failures == gdbserver_tests/mcbreak (stderrB) gdbserver_tests/mcclean_after_fork (stderrB) gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/mcleak (stderrB) gdbserver_tests/mssnapshot (stderrB) gdbserver_tests/nlpasssigalrm (stderrB) memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/linux/timerfd-syscall (stderr) memcheck/tests/overlap (stderr) none/tests/faultstatus (stderr) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc18_semabuse (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 Thu Aug 18 22:19:08 2011 --- new.short Thu Aug 18 22:29:31 2011 *************** *** 8,10 **** ! == 495 tests, 17 stderr failures, 0 stdout failures, 6 stderrB failures, 0 stdoutB failures, 0 post failures == gdbserver_tests/mcbreak (stderrB) --- 8,10 ---- ! == 495 tests, 16 stderr failures, 1 stdout failure, 6 stderrB failures, 0 stdoutB failures, 1 post failure == gdbserver_tests/mcbreak (stderrB) *************** *** 18,20 **** memcheck/tests/linux/timerfd-syscall (stderr) ! memcheck/tests/overlap (stderr) none/tests/faultstatus (stderr) --- 18,21 ---- memcheck/tests/linux/timerfd-syscall (stderr) ! memcheck/tests/sbfragment (stdout) ! massif/tests/big-alloc (post) none/tests/faultstatus (stderr) |
|
From: Christian B. <bor...@de...> - 2011-08-18 20:09:07
|
Nightly build on fedora390 ( Fedora 13/14/15 mix with gcc 3.5.3 on z196 (s390x) ) Started at 2011-08-18 21:45:01 CEST Ended at 2011-08-18 22:09:22 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 == 496 tests, 16 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 1 post failure == memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/linux/timerfd-syscall (stderr) memcheck/tests/sbfragment (stdout) massif/tests/big-alloc (post) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc18_semabuse (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) drd/tests/thread_name (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 == 496 tests, 16 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/linux/timerfd-syscall (stderr) memcheck/tests/overlap (stderr) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc18_semabuse (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 Thu Aug 18 21:57:56 2011 --- new.short Thu Aug 18 22:09:22 2011 *************** *** 8,10 **** ! == 496 tests, 16 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable3 (stderr) --- 8,10 ---- ! == 496 tests, 16 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 1 post failure == memcheck/tests/err_disable3 (stderr) *************** *** 12,14 **** memcheck/tests/linux/timerfd-syscall (stderr) ! memcheck/tests/overlap (stderr) helgrind/tests/locked_vs_unlocked1_fwd (stderr) --- 12,15 ---- memcheck/tests/linux/timerfd-syscall (stderr) ! memcheck/tests/sbfragment (stdout) ! massif/tests/big-alloc (post) helgrind/tests/locked_vs_unlocked1_fwd (stderr) *************** *** 25,26 **** --- 26,28 ---- drd/tests/tc23_bogus_condwait (stderr) + drd/tests/thread_name (stderr) |
|
From: <sv...@va...> - 2011-08-18 15:13:10
|
Author: sewardj
Date: 2011-08-18 16:08:20 +0100 (Thu, 18 Aug 2011)
New Revision: 11993
Log:
Add a new simulation hint, --sim-hints=fuse-compatible, which causes
a bunch of file-related syscalls to be handled on the might-block
syscall path rather than the fast syscall path. This fixes deadlocks
when running some FUSE-specific filesystem codes. Fixes #278057.
(Mike Shal, ma...@gm...)
Modified:
trunk/coregrind/m_main.c
trunk/coregrind/m_syswrap/priv_types_n_macros.h
trunk/coregrind/m_syswrap/syswrap-generic.c
trunk/coregrind/m_syswrap/syswrap-linux.c
trunk/coregrind/m_syswrap/syswrap-x86-linux.c
trunk/docs/xml/manual-core.xml
trunk/none/tests/cmdline1.stdout.exp
trunk/none/tests/cmdline2.stdout.exp
Modified: trunk/coregrind/m_main.c
===================================================================
--- trunk/coregrind/m_main.c 2011-08-18 13:49:48 UTC (rev 11992)
+++ trunk/coregrind/m_main.c 2011-08-18 15:08:20 UTC (rev 11993)
@@ -177,7 +177,7 @@
" --vgdb-prefix=<prefix> prefix for vgdb FIFOs [%s]\n"
" --run-libc-freeres=no|yes free up glibc memory at exit on Linux? [yes]\n"
" --sim-hints=hint1,hint2,... known hints:\n"
-" lax-ioctls, enable-outer [none]\n"
+" lax-ioctls, enable-outer, fuse-compatible [none]\n"
" --kernel-variant=variant1,variant2,... known variants: bproc [none]\n"
" handle non-standard kernel variants\n"
" --show-emwarns=no|yes show warnings about emulation limits? [no]\n"
Modified: trunk/coregrind/m_syswrap/priv_types_n_macros.h
===================================================================
--- trunk/coregrind/m_syswrap/priv_types_n_macros.h 2011-08-18 13:49:48 UTC (rev 11992)
+++ trunk/coregrind/m_syswrap/priv_types_n_macros.h 2011-08-18 15:08:20 UTC (rev 11993)
@@ -345,6 +345,9 @@
if (VG_(clo_trace_syscalls)) \
VG_(printf)(format, ## args)
+#define FUSE_COMPATIBLE_MAY_BLOCK() \
+ if (VG_(strstr)(VG_(clo_sim_hints),"fuse-compatible")) \
+ *flags |= SfMayBlock
/* Macros used to tell tools about uses of scalar arguments. Note,
Modified: trunk/coregrind/m_syswrap/syswrap-generic.c
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-generic.c 2011-08-18 13:49:48 UTC (rev 11992)
+++ trunk/coregrind/m_syswrap/syswrap-generic.c 2011-08-18 15:08:20 UTC (rev 11993)
@@ -2412,6 +2412,7 @@
PRE(sys_fstatfs)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_fstatfs ( %ld, %#lx )",ARG1,ARG2);
PRE_REG_READ2(long, "fstatfs",
unsigned int, fd, struct statfs *, buf);
@@ -2425,6 +2426,7 @@
PRE(sys_fstatfs64)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_fstatfs64 ( %ld, %llu, %#lx )",ARG1,(ULong)ARG2,ARG3);
PRE_REG_READ3(long, "fstatfs64",
unsigned int, fd, vki_size_t, size, struct statfs64 *, buf);
@@ -2471,6 +2473,7 @@
PRE(sys_mknod)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_mknod ( %#lx(%s), 0x%lx, 0x%lx )", ARG1, (char*)ARG1, ARG2, ARG3 );
PRE_REG_READ3(long, "mknod",
const char *, pathname, int, mode, unsigned, dev);
@@ -2849,6 +2852,7 @@
PRE(sys_chdir)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_chdir ( %#lx(%s) )", ARG1,(char*)ARG1);
PRE_REG_READ1(long, "chdir", const char *, path);
PRE_MEM_RASCIIZ( "chdir(path)", ARG1 );
@@ -2856,6 +2860,7 @@
PRE(sys_chmod)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_chmod ( %#lx(%s), %ld )", ARG1,(char*)ARG1,ARG2);
PRE_REG_READ2(long, "chmod", const char *, path, vki_mode_t, mode);
PRE_MEM_RASCIIZ( "chmod(path)", ARG1 );
@@ -2863,6 +2868,7 @@
PRE(sys_chown)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_chown ( %#lx(%s), 0x%lx, 0x%lx )", ARG1,(char*)ARG1,ARG2,ARG3);
PRE_REG_READ3(long, "chown",
const char *, path, vki_uid_t, owner, vki_gid_t, group);
@@ -2871,6 +2877,7 @@
PRE(sys_lchown)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_lchown ( %#lx(%s), 0x%lx, 0x%lx )", ARG1,(char*)ARG1,ARG2,ARG3);
PRE_REG_READ3(long, "lchown",
const char *, path, vki_uid_t, owner, vki_gid_t, group);
@@ -2879,6 +2886,7 @@
PRE(sys_close)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_close ( %ld )", ARG1);
PRE_REG_READ1(long, "close", unsigned int, fd);
@@ -2930,12 +2938,14 @@
PRE(sys_fchdir)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_fchdir ( %ld )", ARG1);
PRE_REG_READ1(long, "fchdir", unsigned int, fd);
}
PRE(sys_fchown)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_fchown ( %ld, %ld, %ld )", ARG1,ARG2,ARG3);
PRE_REG_READ3(long, "fchown",
unsigned int, fd, vki_uid_t, owner, vki_gid_t, group);
@@ -2943,12 +2953,14 @@
PRE(sys_fchmod)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_fchmod ( %ld, %ld )", ARG1,ARG2);
PRE_REG_READ2(long, "fchmod", unsigned int, fildes, vki_mode_t, mode);
}
PRE(sys_newfstat)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_newfstat ( %ld, %#lx )", ARG1,ARG2);
PRE_REG_READ2(long, "fstat", unsigned int, fd, struct stat *, buf);
PRE_MEM_WRITE( "fstat(buf)", ARG2, sizeof(struct vki_stat) );
@@ -3741,6 +3753,7 @@
PRE(sys_readlink)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
Word saved = SYSNO;
PRINT("sys_readlink ( %#lx(%s), %#lx, %llu )", ARG1,(char*)ARG1,ARG2,(ULong)ARG3);
@@ -3822,6 +3835,7 @@
PRE(sys_rename)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_rename ( %#lx(%s), %#lx(%s) )", ARG1,(char*)ARG1,ARG2,(char*)ARG2);
PRE_REG_READ2(long, "rename", const char *, oldpath, const char *, newpath);
PRE_MEM_RASCIIZ( "rename(oldpath)", ARG1 );
@@ -4121,6 +4135,7 @@
PRE(sys_utimes)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_utimes ( %#lx(%s), %#lx )", ARG1,(char*)ARG1,ARG2);
PRE_REG_READ2(long, "utimes", char *, filename, struct timeval *, tvp);
PRE_MEM_RASCIIZ( "utimes(filename)", ARG1 );
Modified: trunk/coregrind/m_syswrap/syswrap-linux.c
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-linux.c 2011-08-18 13:49:48 UTC (rev 11992)
+++ trunk/coregrind/m_syswrap/syswrap-linux.c 2011-08-18 15:08:20 UTC (rev 11993)
@@ -3267,6 +3267,7 @@
PRE(sys_newfstatat)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_newfstatat ( %ld, %#lx(%s), %#lx )", ARG1,ARG2,(char*)ARG2,ARG3);
PRE_REG_READ3(long, "fstatat",
int, dfd, char *, file_name, struct stat *, buf);
Modified: trunk/coregrind/m_syswrap/syswrap-x86-linux.c
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-x86-linux.c 2011-08-18 13:49:48 UTC (rev 11992)
+++ trunk/coregrind/m_syswrap/syswrap-x86-linux.c 2011-08-18 15:08:20 UTC (rev 11993)
@@ -1404,6 +1404,7 @@
PRE(sys_stat64)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_stat64 ( %#lx(%s), %#lx )",ARG1,(char*)ARG1,ARG2);
PRE_REG_READ2(long, "stat64", char *, file_name, struct stat64 *, buf);
PRE_MEM_RASCIIZ( "stat64(file_name)", ARG1 );
@@ -1417,6 +1418,7 @@
PRE(sys_fstatat64)
{
+ FUSE_COMPATIBLE_MAY_BLOCK();
PRINT("sys_fstatat64 ( %ld, %#lx(%s), %#lx )",ARG1,ARG2,(char*)ARG2,ARG3);
PRE_REG_READ3(long, "fstatat64",
int, dfd, char *, file_name, struct stat64 *, buf);
Modified: trunk/docs/xml/manual-core.xml
===================================================================
--- trunk/docs/xml/manual-core.xml 2011-08-18 13:49:48 UTC (rev 11992)
+++ trunk/docs/xml/manual-core.xml 2011-08-18 15:08:20 UTC (rev 11993)
@@ -1647,6 +1647,15 @@
magic needed when the program being run is itself
Valgrind.</para>
</listitem>
+ <listitem>
+ <para><option>fuse-compatible: </option> Enable special
+ handling for certain system calls that may block in a FUSE
+ file-system. This may be necessary when running Valgrind
+ on a multi-threaded program that uses one thread to manage
+ a FUSE file-system and another thread to access that
+ file-system.
+ </para>
+ </listitem>
</itemizedlist>
</listitem>
</varlistentry>
Modified: trunk/none/tests/cmdline1.stdout.exp
===================================================================
--- trunk/none/tests/cmdline1.stdout.exp 2011-08-18 13:49:48 UTC (rev 11992)
+++ trunk/none/tests/cmdline1.stdout.exp 2011-08-18 15:08:20 UTC (rev 11993)
@@ -72,7 +72,7 @@
--vgdb-prefix=<prefix> prefix for vgdb FIFOs [/tmp/vgdb-pipe]
--run-libc-freeres=no|yes free up glibc memory at exit on Linux? [yes]
--sim-hints=hint1,hint2,... known hints:
- lax-ioctls, enable-outer [none]
+ lax-ioctls, enable-outer, fuse-compatible [none]
--kernel-variant=variant1,variant2,... known variants: bproc [none]
handle non-standard kernel variants
--show-emwarns=no|yes show warnings about emulation limits? [no]
Modified: trunk/none/tests/cmdline2.stdout.exp
===================================================================
--- trunk/none/tests/cmdline2.stdout.exp 2011-08-18 13:49:48 UTC (rev 11992)
+++ trunk/none/tests/cmdline2.stdout.exp 2011-08-18 15:08:20 UTC (rev 11993)
@@ -72,7 +72,7 @@
--vgdb-prefix=<prefix> prefix for vgdb FIFOs [/tmp/vgdb-pipe]
--run-libc-freeres=no|yes free up glibc memory at exit on Linux? [yes]
--sim-hints=hint1,hint2,... known hints:
- lax-ioctls, enable-outer [none]
+ lax-ioctls, enable-outer, fuse-compatible [none]
--kernel-variant=variant1,variant2,... known variants: bproc [none]
handle non-standard kernel variants
--show-emwarns=no|yes show warnings about emulation limits? [no]
|
|
From: <sv...@va...> - 2011-08-18 13:54:39
|
Author: sewardj Date: 2011-08-18 14:49:48 +0100 (Thu, 18 Aug 2011) New Revision: 11992 Log: x86-linux: don't add redirections for strchr/index in ld.so since they are already hardwiredly-redirected at startup, and so these are redundant. Modified: trunk/memcheck/mc_replace_strmem.c Modified: trunk/memcheck/mc_replace_strmem.c =================================================================== --- trunk/memcheck/mc_replace_strmem.c 2011-08-18 13:09:55 UTC (rev 11991) +++ trunk/memcheck/mc_replace_strmem.c 2011-08-18 13:49:48 UTC (rev 11992) @@ -198,10 +198,12 @@ STRCHR(VG_Z_LIBC_SONAME, index) #if defined(VGO_linux) STRCHR(VG_Z_LIBC_SONAME, __GI_strchr) -STRCHR(VG_Z_LD_LINUX_SO_2, strchr) -STRCHR(VG_Z_LD_LINUX_SO_2, index) -STRCHR(VG_Z_LD_LINUX_X86_64_SO_2, strchr) -STRCHR(VG_Z_LD_LINUX_X86_64_SO_2, index) +#if !defined(VGP_x86_linux) + STRCHR(VG_Z_LD_LINUX_SO_2, strchr) + STRCHR(VG_Z_LD_LINUX_SO_2, index) + STRCHR(VG_Z_LD_LINUX_X86_64_SO_2, strchr) + STRCHR(VG_Z_LD_LINUX_X86_64_SO_2, index) +#endif #elif defined(VGO_darwin) STRCHR(VG_Z_DYLD, strchr) STRCHR(VG_Z_DYLD, index) |
|
From: <sv...@va...> - 2011-08-18 13:14:44
|
Author: sewardj
Date: 2011-08-18 14:09:55 +0100 (Thu, 18 Aug 2011)
New Revision: 11991
Log:
Extend the behavioural-equivalence-class mechanism for redirection
functions to include the ability to give a priority to each function,
as well as a tag indicating its behavioural class. Add logic in
m_redir.c to resolve conflicting redirections with the same eclass but
different priorities by preferring the redirection with the higher
priority. Use all of the above in mc_replace_strmem.c, to cause a
conflict between redirections for "memcpy" and "memcpy@GLIBC_2.2.5" to
be resolved in favour of the latter (the non-overlap-checking
version).
This is all related to the massive swamp that is #275284.
Modified:
trunk/coregrind/m_demangle/demangle.c
trunk/coregrind/m_redir.c
trunk/coregrind/m_replacemalloc/vg_replace_malloc.c
trunk/coregrind/pub_core_demangle.h
trunk/include/pub_tool_redir.h
trunk/include/valgrind.h
trunk/memcheck/mc_replace_strmem.c
Modified: trunk/coregrind/m_demangle/demangle.c
===================================================================
--- trunk/coregrind/m_demangle/demangle.c 2011-08-18 08:10:20 UTC (rev 11990)
+++ trunk/coregrind/m_demangle/demangle.c 2011-08-18 13:09:55 UTC (rev 11991)
@@ -100,7 +100,7 @@
interested in that). */
if (do_z_demangling) {
if (VG_(maybe_Z_demangle)( orig, NULL,0,/*soname*/
- z_demangled, N_ZBUF, NULL, NULL )) {
+ z_demangled, N_ZBUF, NULL, NULL, NULL )) {
orig = z_demangled;
}
}
@@ -147,7 +147,8 @@
/*OUT*/HChar* so, Int soLen,
/*OUT*/HChar* fn, Int fnLen,
/*OUT*/Bool* isWrap,
- /*OUT*/Int* eclassTag )
+ /*OUT*/Int* eclassTag,
+ /*OUT*/Int* eclassPrio )
{
# define EMITSO(ch) \
do { \
@@ -181,24 +182,28 @@
valid = sym[0] == '_'
&& sym[1] == 'v'
&& sym[2] == 'g'
- && (sym[3] == 'r' || sym[3] == 'w' || sym[3] == 'n')
+ && (sym[3] == 'r' || sym[3] == 'w')
&& VG_(isdigit)(sym[4])
&& VG_(isdigit)(sym[5])
&& VG_(isdigit)(sym[6])
&& VG_(isdigit)(sym[7])
- && sym[8] == 'Z'
- && (sym[9] == 'Z' || sym[9] == 'U')
- && sym[10] == '_';
- if (valid && sym[3] == 'n') {
- /* for _vgn (notify-on-load symbols), the equivalence class has
- no meaning; hence ensure it is the default 0000 value. */
- if (sym[4] != '0' || sym[5] != '0' || sym[6] != '0' || sym[7] != '0')
- valid = False;
+ && VG_(isdigit)(sym[8])
+ && sym[9] == 'Z'
+ && (sym[10] == 'Z' || sym[10] == 'U')
+ && sym[11] == '_';
+
+ if (valid
+ && sym[4] == '0' && sym[5] == '0' && sym[6] == '0' && sym[7] == '0'
+ && sym[8] != '0') {
+ /* If the eclass tag is 0000 (meaning "no eclass"), the priority
+ must be 0 too. */
+ valid = False;
}
+
if (!valid)
return False;
- fn_is_encoded = sym[9] == 'Z';
+ fn_is_encoded = sym[10] == 'Z';
if (isWrap)
*isWrap = sym[3] == 'w';
@@ -211,21 +216,26 @@
vg_assert(*eclassTag >= 0 && *eclassTag <= 9999);
}
+ if (eclassPrio) {
+ *eclassPrio = ((Int)sym[8]) - '0';
+ vg_assert(*eclassPrio >= 0 && *eclassPrio <= 9);
+ }
+
/* Now check the soname prefix isn't "VG_Z_", as described in
pub_tool_redir.h. */
is_VG_Z_prefixed =
- sym[11] == 'V' &&
- sym[12] == 'G' &&
- sym[13] == '_' &&
- sym[14] == 'Z' &&
- sym[15] == '_';
+ sym[12] == 'V' &&
+ sym[13] == 'G' &&
+ sym[14] == '_' &&
+ sym[15] == 'Z' &&
+ sym[16] == '_';
if (is_VG_Z_prefixed) {
vg_assert2(0, "symbol with a 'VG_Z_' prefix: %s.\n"
"see pub_tool_redir.h for an explanation.", sym);
}
/* Now scan the Z-encoded soname. */
- i = 11;
+ i = 12;
while (True) {
if (sym[i] == '_')
Modified: trunk/coregrind/m_redir.c
===================================================================
--- trunk/coregrind/m_redir.c 2011-08-18 08:10:20 UTC (rev 11990)
+++ trunk/coregrind/m_redir.c 2011-08-18 13:09:55 UTC (rev 11991)
@@ -233,6 +233,9 @@
Int becTag; /* 0 through 9999. Behavioural equivalance class tag.
If two wrappers have the same (non-zero) tag, they
are promising that they behave identically. */
+ Int becPrio; /* 0 through 9. Behavioural equivalence class prio.
+ Used to choose between competing wrappers with
+ the same (non-zero) tag. */
const HChar** mandatory; /* non-NULL ==> abort V and print the
strings if from_sopatt is loaded but
from_fnpatt cannot be found */
@@ -278,6 +281,7 @@
TopSpec* parent_spec; /* the TopSpec which supplied the Spec */
TopSpec* parent_sym; /* the TopSpec which supplied the symbol */
Int becTag; /* behavioural eclass tag for ::to_addr */
+ Int becPrio; /* and its priority */
Bool isWrap; /* wrap or replacement? */
Bool isIFunc; /* indirect function? */
}
@@ -371,7 +375,7 @@
void VG_(redir_notify_new_DebugInfo)( DebugInfo* newdi )
{
Bool ok, isWrap;
- Int i, nsyms, becTag;
+ Int i, nsyms, becTag, becPrio;
Spec* specList;
Spec* spec;
TopSpec* ts;
@@ -416,7 +420,7 @@
ok = VG_(maybe_Z_demangle)( *names,
demangled_sopatt, N_DEMANGLED,
demangled_fnpatt, N_DEMANGLED,
- &isWrap, &becTag );
+ &isWrap, &becTag, &becPrio );
/* ignore data symbols */
if (!isText)
continue;
@@ -442,6 +446,7 @@
spec->to_addr = sym_addr;
spec->isWrap = isWrap;
spec->becTag = becTag;
+ spec->becPrio = becPrio;
/* check we're not adding manifestly stupid destinations */
vg_assert(is_plausible_guest_addr(sym_addr));
spec->next = specList;
@@ -465,7 +470,7 @@
ok = isText
&& VG_(maybe_Z_demangle)(
*names, demangled_sopatt, N_DEMANGLED,
- demangled_fnpatt, N_DEMANGLED, &isWrap, NULL );
+ demangled_fnpatt, N_DEMANGLED, &isWrap, NULL, NULL );
if (!ok)
/* not a redirect. Ignore. */
continue;
@@ -640,6 +645,7 @@
act.parent_spec = parent_spec;
act.parent_sym = parent_sym;
act.becTag = sp->becTag;
+ act.becPrio = sp->becPrio;
act.isWrap = sp->isWrap;
act.isIFunc = isIFunc;
sp->done = True;
@@ -707,8 +713,9 @@
conflicting bindings. */
static void maybe_add_active ( Active act )
{
- HChar* what = NULL;
- Active* old = NULL;
+ HChar* what = NULL;
+ Active* old = NULL;
+ Bool add_act = False;
/* Complain and ignore manifestly bogus 'from' addresses.
@@ -744,26 +751,63 @@
nonzero, then that's fine. But if not, we can't show they
are equivalent, so we have to complain, and ignore the new
binding. */
- vg_assert(old->becTag >= 0 && old->becTag <= 9999);
- vg_assert(act.becTag >= 0 && act.becTag <= 9999);
- if (old->becTag != 0 && act.becTag != 0 && old->becTag == act.becTag) {
- /* the replacements are behaviourally equivalent, so we can
- safely ignore this conflict, and not add the new one. */
+ vg_assert(old->becTag >= 0 && old->becTag <= 9999);
+ vg_assert(old->becPrio >= 0 && old->becPrio <= 9);
+ vg_assert(act.becTag >= 0 && act.becTag <= 9999);
+ vg_assert(act.becPrio >= 0 && act.becPrio <= 9);
+ if (old->becTag == 0)
+ vg_assert(old->becPrio == 0);
+ if (act.becTag == 0)
+ vg_assert(act.becPrio == 0);
+
+ if (old->becTag == 0 || act.becTag == 0 || old->becTag != act.becTag) {
+ /* We can't show that they are equivalent. Complain and
+ ignore. */
+ what = "new redirection conflicts with existing -- ignoring it";
+ goto bad;
+ }
+ /* They have the same eclass tag. Use the priorities to
+ resolve the ambiguity. */
+ if (act.becPrio <= old->becPrio) {
+ /* The new one doesn't have a higher priority, so just
+ ignore it. */
if (VG_(clo_verbosity) > 2) {
- VG_(message)(Vg_UserMsg, "Ignoring duplicate redirection:\n");
+ VG_(message)(Vg_UserMsg, "Ignoring %s redirection:\n",
+ act.becPrio < old->becPrio ? "lower priority"
+ : "duplicate");
show_active( " old: ", old);
show_active( " new: ", &act);
}
} else {
- what = "new redirection conflicts with existing -- ignoring it";
- goto bad;
+ /* The tricky case. The new one has a higher priority, so
+ we need to get the old one out of the OSet and install
+ this one in its place. */
+ if (VG_(clo_verbosity) > 1) {
+ VG_(message)(Vg_UserMsg,
+ "Preferring higher priority redirection:\n");
+ show_active( " old: ", old);
+ show_active( " new: ", &act);
+ }
+ add_act = True;
+ void* oldNd = VG_(OSetGen_Remove)( activeSet, &act.from_addr );
+ vg_assert(oldNd == old);
+ VG_(OSetGen_FreeNode)( activeSet, old );
+ old = NULL;
}
} else {
/* This appears to be a duplicate of an existing binding.
Safe(ish) -- ignore. */
/* XXXXXXXXXXX COMPLAIN if new and old parents differ */
}
+
} else {
+ /* There's no previous binding for this from_addr, so we must
+ add 'act' to the active set. */
+ add_act = True;
+ }
+
+ /* So, finally, actually add it. */
+ if (add_act) {
Active* a = VG_(OSetGen_AllocNode)(activeSet, sizeof(Active));
vg_assert(a);
*a = act;
@@ -786,6 +830,7 @@
bad:
vg_assert(what);
+ vg_assert(!add_act);
if (VG_(clo_verbosity) > 1) {
VG_(message)(Vg_UserMsg, "WARNING: %s\n", what);
if (old) {
@@ -936,6 +981,7 @@
act.parent_spec = NULL;
act.parent_sym = NULL;
act.becTag = 0; /* "not equivalent to any other fn" */
+ act.becPrio = 0; /* mandatory when becTag == 0 */
act.isWrap = False;
act.isIFunc = False;
maybe_add_active( act );
@@ -1248,7 +1294,8 @@
if (VG_(strcmp)(symbol, VG_STRINGIFY(VG_NOTIFY_ON_LOAD(freeres))) == 0)
VG_(client___libc_freeres_wrapper) = addr;
- else if (VG_(strcmp)(symbol, VG_STRINGIFY(VG_NOTIFY_ON_LOAD(ifunc_wrapper))) == 0)
+ else
+ if (VG_(strcmp)(symbol, VG_STRINGIFY(VG_NOTIFY_ON_LOAD(ifunc_wrapper))) == 0)
iFuncWrapper = addr;
else
vg_assert2(0, "unrecognised load notification function: %s", symbol);
@@ -1381,11 +1428,11 @@
static void show_spec ( HChar* left, Spec* spec )
{
VG_(message)( Vg_DebugMsg,
- "%s%25s %30s %s-> (%04d) 0x%08llx\n",
+ "%s%25s %30s %s-> (%04d.%d) 0x%08llx\n",
left,
spec->from_sopatt, spec->from_fnpatt,
spec->isWrap ? "W" : "R",
- spec->becTag,
+ spec->becTag, spec->becPrio,
(ULong)spec->to_addr );
}
@@ -1400,11 +1447,12 @@
ok = VG_(get_fnname_w_offset)(act->to_addr, name2, 64);
if (!ok) VG_(strcpy)(name2, "???");
- VG_(message)(Vg_DebugMsg, "%s0x%08llx (%20s) %s-> (%04d) 0x%08llx %s\n",
+ VG_(message)(Vg_DebugMsg, "%s0x%08llx (%20s) %s-> (%04d.%d) 0x%08llx %s\n",
left,
(ULong)act->from_addr, name1,
act->isWrap ? "W" : "R",
- act->becTag, (ULong)act->to_addr, name2 );
+ act->becTag, act->becPrio,
+ (ULong)act->to_addr, name2 );
}
static void show_redir_state ( HChar* who )
Modified: trunk/coregrind/m_replacemalloc/vg_replace_malloc.c
===================================================================
--- trunk/coregrind/m_replacemalloc/vg_replace_malloc.c 2011-08-18 08:10:20 UTC (rev 11990)
+++ trunk/coregrind/m_replacemalloc/vg_replace_malloc.c 2011-08-18 13:09:55 UTC (rev 11991)
@@ -73,28 +73,28 @@
/* Assignment of behavioural equivalence class tags: 1NNN is intended
to be reserved for the Valgrind core. Current usage:
- 1001 ALLOC_or_NULL
- 1002 ZONEALLOC_or_NULL
- 1003 ALLOC_or_BOMB
- 1004 ZONEFREE
- 1005 FREE
- 1006 ZONECALLOC
- 1007 CALLOC
- 1008 ZONEREALLOC
- 1009 REALLOC
- 1010 ZONEMEMALIGN
- 1011 MEMALIGN
- 1012 VALLOC
- 1013 ZONEVALLOC
- 1014 MALLOPT
- 1015 MALLOC_TRIM
- 1016 POSIX_MEMALIGN
- 1017 MALLOC_USABLE_SIZE
- 1018 PANIC
- 1019 MALLOC_STATS
- 1020 MALLINFO
- 1021 DEFAULT_ZONE
- 1022 ZONE_CHECK
+ 10010 ALLOC_or_NULL
+ 10020 ZONEALLOC_or_NULL
+ 10030 ALLOC_or_BOMB
+ 10040 ZONEFREE
+ 10050 FREE
+ 10060 ZONECALLOC
+ 10070 CALLOC
+ 10080 ZONEREALLOC
+ 10090 REALLOC
+ 10100 ZONEMEMALIGN
+ 10110 MEMALIGN
+ 10120 VALLOC
+ 10130 ZONEVALLOC
+ 10140 MALLOPT
+ 10150 MALLOC_TRIM
+ 10160 POSIX_MEMALIGN
+ 10170 MALLOC_USABLE_SIZE
+ 10180 PANIC
+ 10190 MALLOC_STATS
+ 10200 MALLINFO
+ 10210 DEFAULT_ZONE
+ 10220 ZONE_CHECK
*/
/* 2 Apr 05: the Portland Group compiler, which uses cfront/ARM style
@@ -198,8 +198,8 @@
*/
#define ALLOC_or_NULL(soname, fnname, vg_replacement) \
\
- void* VG_REPLACE_FUNCTION_EZU(1001,soname,fnname) (SizeT n); \
- void* VG_REPLACE_FUNCTION_EZU(1001,soname,fnname) (SizeT n) \
+ void* VG_REPLACE_FUNCTION_EZU(10010,soname,fnname) (SizeT n); \
+ void* VG_REPLACE_FUNCTION_EZU(10010,soname,fnname) (SizeT n) \
{ \
void* v; \
\
@@ -213,8 +213,8 @@
#define ZONEALLOC_or_NULL(soname, fnname, vg_replacement) \
\
- void* VG_REPLACE_FUNCTION_EZU(1002,soname,fnname) (void *zone, SizeT n); \
- void* VG_REPLACE_FUNCTION_EZU(1002,soname,fnname) (void *zone, SizeT n) \
+ void* VG_REPLACE_FUNCTION_EZU(10020,soname,fnname) (void *zone, SizeT n); \
+ void* VG_REPLACE_FUNCTION_EZU(10020,soname,fnname) (void *zone, SizeT n) \
{ \
void* v; \
\
@@ -233,8 +233,8 @@
*/
#define ALLOC_or_BOMB(soname, fnname, vg_replacement) \
\
- void* VG_REPLACE_FUNCTION_EZU(1003,soname,fnname) (SizeT n); \
- void* VG_REPLACE_FUNCTION_EZU(1003,soname,fnname) (SizeT n) \
+ void* VG_REPLACE_FUNCTION_EZU(10030,soname,fnname) (SizeT n); \
+ void* VG_REPLACE_FUNCTION_EZU(10030,soname,fnname) (SizeT n) \
{ \
void* v; \
\
@@ -342,8 +342,8 @@
*/
#define ZONEFREE(soname, fnname, vg_replacement) \
\
- void VG_REPLACE_FUNCTION_EZU(1004,soname,fnname) (void *zone, void *p); \
- void VG_REPLACE_FUNCTION_EZU(1004,soname,fnname) (void *zone, void *p) \
+ void VG_REPLACE_FUNCTION_EZU(10040,soname,fnname) (void *zone, void *p); \
+ void VG_REPLACE_FUNCTION_EZU(10040,soname,fnname) (void *zone, void *p) \
{ \
if (!init_done) init(); \
MALLOC_TRACE(#vg_replacement "(%p, %p)\n", zone, p ); \
@@ -354,8 +354,8 @@
#define FREE(soname, fnname, vg_replacement) \
\
- void VG_REPLACE_FUNCTION_EZU(1005,soname,fnname) (void *p); \
- void VG_REPLACE_FUNCTION_EZU(1005,soname,fnname) (void *p) \
+ void VG_REPLACE_FUNCTION_EZU(10050,soname,fnname) (void *p); \
+ void VG_REPLACE_FUNCTION_EZU(10050,soname,fnname) (void *p) \
{ \
if (!init_done) init(); \
MALLOC_TRACE(#vg_replacement "(%p)\n", p ); \
@@ -417,9 +417,9 @@
#define ZONECALLOC(soname, fnname) \
\
- void* VG_REPLACE_FUNCTION_EZU(1006,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10060,soname,fnname) \
( void *zone, SizeT nmemb, SizeT size ); \
- void* VG_REPLACE_FUNCTION_EZU(1006,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10060,soname,fnname) \
( void *zone, SizeT nmemb, SizeT size ) \
{ \
void* v; \
@@ -434,9 +434,9 @@
#define CALLOC(soname, fnname) \
\
- void* VG_REPLACE_FUNCTION_EZU(1007,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10070,soname,fnname) \
( SizeT nmemb, SizeT size ); \
- void* VG_REPLACE_FUNCTION_EZU(1007,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10070,soname,fnname) \
( SizeT nmemb, SizeT size ) \
{ \
void* v; \
@@ -469,9 +469,9 @@
#define ZONEREALLOC(soname, fnname) \
\
- void* VG_REPLACE_FUNCTION_EZU(1008,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10080,soname,fnname) \
( void *zone, void* ptrV, SizeT new_size ); \
- void* VG_REPLACE_FUNCTION_EZU(1008,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10080,soname,fnname) \
( void *zone, void* ptrV, SizeT new_size ) \
{ \
void* v; \
@@ -482,10 +482,10 @@
if (ptrV == NULL) \
/* We need to call a malloc-like function; so let's use \
one which we know exists. GrP fixme use zonemalloc instead? */ \
- return VG_REPLACE_FUNCTION_EZU(1001,VG_Z_LIBC_SONAME,malloc) \
+ return VG_REPLACE_FUNCTION_EZU(10010,VG_Z_LIBC_SONAME,malloc) \
(new_size); \
if (new_size <= 0) { \
- VG_REPLACE_FUNCTION_EZU(1005,VG_Z_LIBC_SONAME,free)(ptrV); \
+ VG_REPLACE_FUNCTION_EZU(10050,VG_Z_LIBC_SONAME,free)(ptrV); \
MALLOC_TRACE(" = 0\n"); \
return NULL; \
} \
@@ -496,9 +496,9 @@
#define REALLOC(soname, fnname) \
\
- void* VG_REPLACE_FUNCTION_EZU(1009,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10090,soname,fnname) \
( void* ptrV, SizeT new_size );\
- void* VG_REPLACE_FUNCTION_EZU(1009,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10090,soname,fnname) \
( void* ptrV, SizeT new_size ) \
{ \
void* v; \
@@ -509,10 +509,10 @@
if (ptrV == NULL) \
/* We need to call a malloc-like function; so let's use \
one which we know exists. */ \
- return VG_REPLACE_FUNCTION_EZU(1001,VG_Z_LIBC_SONAME,malloc) \
+ return VG_REPLACE_FUNCTION_EZU(10010,VG_Z_LIBC_SONAME,malloc) \
(new_size); \
if (new_size <= 0) { \
- VG_REPLACE_FUNCTION_EZU(1005,VG_Z_LIBC_SONAME,free)(ptrV); \
+ VG_REPLACE_FUNCTION_EZU(10050,VG_Z_LIBC_SONAME,free)(ptrV); \
MALLOC_TRACE(" = 0\n"); \
return NULL; \
} \
@@ -531,9 +531,9 @@
#define ZONEMEMALIGN(soname, fnname) \
\
- void* VG_REPLACE_FUNCTION_EZU(1010,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10100,soname,fnname) \
( void *zone, SizeT alignment, SizeT n ); \
- void* VG_REPLACE_FUNCTION_EZU(1010,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10100,soname,fnname) \
( void *zone, SizeT alignment, SizeT n ) \
{ \
void* v; \
@@ -556,9 +556,9 @@
#define MEMALIGN(soname, fnname) \
\
- void* VG_REPLACE_FUNCTION_EZU(1011,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10110,soname,fnname) \
( SizeT alignment, SizeT n ); \
- void* VG_REPLACE_FUNCTION_EZU(1011,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10110,soname,fnname) \
( SizeT alignment, SizeT n ) \
{ \
void* v; \
@@ -589,27 +589,27 @@
#define VALLOC(soname, fnname) \
\
- void* VG_REPLACE_FUNCTION_EZU(1012,soname,fnname) ( SizeT size ); \
- void* VG_REPLACE_FUNCTION_EZU(1012,soname,fnname) ( SizeT size ) \
+ void* VG_REPLACE_FUNCTION_EZU(10120,soname,fnname) ( SizeT size ); \
+ void* VG_REPLACE_FUNCTION_EZU(10120,soname,fnname) ( SizeT size ) \
{ \
static int pszB = 0; \
if (pszB == 0) \
pszB = my_getpagesize(); \
- return VG_REPLACE_FUNCTION_EZU(1011,VG_Z_LIBC_SONAME,memalign) \
+ return VG_REPLACE_FUNCTION_EZU(10110,VG_Z_LIBC_SONAME,memalign) \
((SizeT)pszB, size); \
}
#define ZONEVALLOC(soname, fnname) \
\
- void* VG_REPLACE_FUNCTION_EZU(1013,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10130,soname,fnname) \
( void *zone, SizeT size ); \
- void* VG_REPLACE_FUNCTION_EZU(1013,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(10130,soname,fnname) \
( void *zone, SizeT size ) \
{ \
static int pszB = 0; \
if (pszB == 0) \
pszB = my_getpagesize(); \
- return VG_REPLACE_FUNCTION_EZU(1011,VG_Z_LIBC_SONAME,memalign) \
+ return VG_REPLACE_FUNCTION_EZU(10110,VG_Z_LIBC_SONAME,memalign) \
((SizeT)pszB, size); \
}
@@ -625,8 +625,8 @@
#define MALLOPT(soname, fnname) \
\
- int VG_REPLACE_FUNCTION_EZU(1014,soname,fnname) ( int cmd, int value ); \
- int VG_REPLACE_FUNCTION_EZU(1014,soname,fnname) ( int cmd, int value ) \
+ int VG_REPLACE_FUNCTION_EZU(10140,soname,fnname) ( int cmd, int value ); \
+ int VG_REPLACE_FUNCTION_EZU(10140,soname,fnname) ( int cmd, int value ) \
{ \
/* In glibc-2.2.4, 1 denotes a successful return value for \
mallopt */ \
@@ -661,8 +661,8 @@
// For simplicity, we always return 0.
#define MALLOC_TRIM(soname, fnname) \
\
- int VG_REPLACE_FUNCTION_EZU(1015,soname,fnname) ( SizeT pad ); \
- int VG_REPLACE_FUNCTION_EZU(1015,soname,fnname) ( SizeT pad ) \
+ int VG_REPLACE_FUNCTION_EZU(10150,soname,fnname) ( SizeT pad ); \
+ int VG_REPLACE_FUNCTION_EZU(10150,soname,fnname) ( SizeT pad ) \
{ \
/* 0 denotes that malloc_trim() either wasn't able \
to do anything, or was not implemented */ \
@@ -676,9 +676,9 @@
#define POSIX_MEMALIGN(soname, fnname) \
\
- int VG_REPLACE_FUNCTION_EZU(1016,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(10160,soname,fnname) \
( void **memptr, SizeT alignment, SizeT size ); \
- int VG_REPLACE_FUNCTION_EZU(1016,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(10160,soname,fnname) \
( void **memptr, SizeT alignment, SizeT size ) \
{ \
void *mem; \
@@ -689,7 +689,7 @@
|| (alignment & (alignment - 1)) != 0) \
return VKI_EINVAL; \
\
- mem = VG_REPLACE_FUNCTION_EZU(1011,VG_Z_LIBC_SONAME,memalign) \
+ mem = VG_REPLACE_FUNCTION_EZU(10110,VG_Z_LIBC_SONAME,memalign) \
(alignment, size); \
\
if (mem != NULL) { \
@@ -707,8 +707,8 @@
#define MALLOC_USABLE_SIZE(soname, fnname) \
\
- SizeT VG_REPLACE_FUNCTION_EZU(1017,soname,fnname) ( void* p ); \
- SizeT VG_REPLACE_FUNCTION_EZU(1017,soname,fnname) ( void* p ) \
+ SizeT VG_REPLACE_FUNCTION_EZU(10170,soname,fnname) ( void* p ); \
+ SizeT VG_REPLACE_FUNCTION_EZU(10170,soname,fnname) ( void* p ) \
{ \
SizeT pszB; \
\
@@ -740,8 +740,8 @@
#define PANIC(soname, fnname) \
\
- void VG_REPLACE_FUNCTION_EZU(1018,soname,fnname) ( void ); \
- void VG_REPLACE_FUNCTION_EZU(1018,soname,fnname) ( void ) \
+ void VG_REPLACE_FUNCTION_EZU(10180,soname,fnname) ( void ); \
+ void VG_REPLACE_FUNCTION_EZU(10180,soname,fnname) ( void ) \
{ \
panic(#fnname); \
}
@@ -752,8 +752,8 @@
#define MALLOC_STATS(soname, fnname) \
\
- void VG_REPLACE_FUNCTION_EZU(1019,soname,fnname) ( void ); \
- void VG_REPLACE_FUNCTION_EZU(1019,soname,fnname) ( void ) \
+ void VG_REPLACE_FUNCTION_EZU(10190,soname,fnname) ( void ); \
+ void VG_REPLACE_FUNCTION_EZU(10190,soname,fnname) ( void ) \
{ \
/* Valgrind's malloc_stats implementation does nothing. */ \
}
@@ -768,8 +768,8 @@
// doesn't know that the call to mallinfo fills in mi.
#define MALLINFO(soname, fnname) \
\
- struct vg_mallinfo VG_REPLACE_FUNCTION_EZU(1020,soname,fnname) ( void ); \
- struct vg_mallinfo VG_REPLACE_FUNCTION_EZU(1020,soname,fnname) ( void ) \
+ struct vg_mallinfo VG_REPLACE_FUNCTION_EZU(10200,soname,fnname) ( void ); \
+ struct vg_mallinfo VG_REPLACE_FUNCTION_EZU(10200,soname,fnname) ( void ) \
{ \
static struct vg_mallinfo mi; \
if (!init_done) init(); \
@@ -787,11 +787,11 @@
NULL, // reserved
NULL, // reserved
NULL, // GrP fixme malloc_size
- (void*)VG_REPLACE_FUNCTION_EZU(1002,VG_Z_LIBC_SONAME,malloc_zone_malloc),
- (void*)VG_REPLACE_FUNCTION_EZU(1006,VG_Z_LIBC_SONAME,malloc_zone_calloc),
- (void*)VG_REPLACE_FUNCTION_EZU(1013,VG_Z_LIBC_SONAME,malloc_zone_valloc),
- (void*)VG_REPLACE_FUNCTION_EZU(1004,VG_Z_LIBC_SONAME,malloc_zone_free),
- (void*)VG_REPLACE_FUNCTION_EZU(1008,VG_Z_LIBC_SONAME,malloc_zone_realloc),
+ (void*)VG_REPLACE_FUNCTION_EZU(10020,VG_Z_LIBC_SONAME,malloc_zone_malloc),
+ (void*)VG_REPLACE_FUNCTION_EZU(10060,VG_Z_LIBC_SONAME,malloc_zone_calloc),
+ (void*)VG_REPLACE_FUNCTION_EZU(10130,VG_Z_LIBC_SONAME,malloc_zone_valloc),
+ (void*)VG_REPLACE_FUNCTION_EZU(10040,VG_Z_LIBC_SONAME,malloc_zone_free),
+ (void*)VG_REPLACE_FUNCTION_EZU(10080,VG_Z_LIBC_SONAME,malloc_zone_realloc),
NULL, // GrP fixme destroy
"ValgrindMallocZone",
NULL, // batch_malloc
@@ -806,8 +806,8 @@
#define DEFAULT_ZONE(soname, fnname) \
\
- void *VG_REPLACE_FUNCTION_EZU(1021,soname,fnname) ( void ); \
- void *VG_REPLACE_FUNCTION_EZU(1021,soname,fnname) ( void ) \
+ void *VG_REPLACE_FUNCTION_EZU(10210,soname,fnname) ( void ); \
+ void *VG_REPLACE_FUNCTION_EZU(10210,soname,fnname) ( void ) \
{ \
return &vg_default_zone; \
}
@@ -820,8 +820,8 @@
// GrP fixme bypass libc's use of zone->introspect->check
#define ZONE_CHECK(soname, fnname) \
\
- int VG_REPLACE_FUNCTION_EZU(1022,soname,fnname)(void* zone); \
- int VG_REPLACE_FUNCTION_EZU(1022,soname,fnname)(void* zone) \
+ int VG_REPLACE_FUNCTION_EZU(10220,soname,fnname)(void* zone); \
+ int VG_REPLACE_FUNCTION_EZU(10220,soname,fnname)(void* zone) \
{ \
return 1; \
}
Modified: trunk/coregrind/pub_core_demangle.h
===================================================================
--- trunk/coregrind/pub_core_demangle.h 2011-08-18 08:10:20 UTC (rev 11990)
+++ trunk/coregrind/pub_core_demangle.h 2011-08-18 13:09:55 UTC (rev 11991)
@@ -60,7 +60,8 @@
/*OUT*/HChar* so, Int soLen,
/*OUT*/HChar* fn, Int fnLen,
/*OUT*/Bool* isWrap,
- /*OUT*/Int* eclassTag );
+ /*OUT*/Int* eclassTag,
+ /*OUT*/Int* eclassPrio );
#endif // __PUB_CORE_DEMANGLE_H
Modified: trunk/include/pub_tool_redir.h
===================================================================
--- trunk/include/pub_tool_redir.h 2011-08-18 08:10:20 UTC (rev 11990)
+++ trunk/include/pub_tool_redir.h 2011-08-18 13:09:55 UTC (rev 11991)
@@ -51,24 +51,31 @@
sure you use the VG_REPLACE_FN_ macros and not the VG_WRAP_FN_
macros.
- Finally there is the concept of behavioural equivalence tags. A
- tag is a 4-digit decimal number (0001 to 9999) encoded in the name.
- If two replacement functions have the same tag then the redirect
- mechanism will assume that they have identical behaviour. If, when
- processing redirections at library load time, the set of available
- specifications yields more than one replacement or wrapper function
- for a given address, the system will try to resolve the situation
- by examining the tags on the replacements/wrappers. In particular,
- if all of them have the same tag, then they are all claiming to
- behave identically, so any of them may be chosen to be the actual
- redirection target. Of course if not all of them have the same tag
- then the redirection is ambiguous and the system will have to stop.
+ Finally there is the concept of prioritised behavioural equivalence
+ tags. A tag is a 5-digit decimal number (00000 to 99999) encoded
+ in the name. The top 4 digits are the equivalence class number,
+ and the last digit is a priority.
- The tag is mandatory and must comprise 4 decimal digits. The tag
- 0000 is special and means "does not have behaviour identical to any
+ When processing redirections at library load time, if the set of
+ available specifications yields more than one replacement or
+ wrapper function for a given address, the system will try to
+ resolve the situation by examining the tags on the
+ replacements/wrappers.
+
+ If two replacement/wrapper functions have the same tag and
+ priority, then the redirection machinery will assume they have
+ identical behaviour and can choose between them arbitrarily. If
+ they have the same tag but different priorities, then the one with
+ higher priority will be chosen. If neither case holds, then the
+ redirection is ambiguous and the system will ignore one of them
+ arbitrarily, but print a warning when running at -v or above.
+
+ The tag is mandatory and must comprise 5 decimal digits. The tag
+ 00000 is special and means "does not have behaviour identical to any
other replacement/wrapper function". Hence if you wish to write a
wrap/replacement function that is not subject to the above
- resolution rules, use 0000 for the tag.
+ resolution rules, use 00000 for the tag. Tags 00001 through 00009
+ may not be used for any purpose.
Replacement
@@ -83,12 +90,12 @@
zEncodedSoname should be a Z-encoded soname (see below for
Z-encoding details) and fnname should be an unencoded fn name. A
- default-safe equivalence tag of 0000 is assumed (see comments
+ default-safe equivalence tag of 00000 is assumed (see comments
above). The resulting name is
- _vgr0000ZU_zEncodedSoname_fnname
+ _vgr00000ZU_zEncodedSoname_fnname
- The "_vgr0000ZU_" is a prefix that gets discarded upon decoding.
+ The "_vgr00000ZU_" is a prefix that gets discarded upon decoding.
It identifies this function as a replacement and specifies its
equivalence tag.
@@ -104,7 +111,7 @@
Z-encoded. This can sometimes be necessary. In this case the
resulting function name is
- _vgr0000ZZ_zEncodedSoname_zEncodedFnname
+ _vgr00000ZZ_zEncodedSoname_zEncodedFnname
When it sees this either such name, the core's symbol-table reading
machinery and redirection machinery first Z-decode the soname and
@@ -138,12 +145,12 @@
To write function names which explicitly state the equivalence class
tag, use
- VG_REPLACE_FUNCTION_EZU(4-digit-tag,zEncodedSoname,fnname)
+ VG_REPLACE_FUNCTION_EZU(5-digit-tag,zEncodedSoname,fnname)
or
- VG_REPLACE_FUNCTION_EZZ(4-digit-tag,zEncodedSoname,zEncodedFnname)
+ VG_REPLACE_FUNCTION_EZZ(5-digit-tag,zEncodedSoname,zEncodedFnname)
- As per comments above, the tag must be a 4 digit decimal number,
- padded with leading zeroes, in the range 0001 to 9999 inclusive.
+ As per comments above, the tag must be a 5 digit decimal number,
+ padded with leading zeroes, in the range 00010 to 99999 inclusive.
Wrapping
@@ -206,16 +213,16 @@
/* Convenience macros defined in terms of the above 4. */
#define VG_REPLACE_FUNCTION_ZU(_soname,_fnname) \
- VG_CONCAT6(_vgr,0000,ZU_,_soname,_,_fnname)
+ VG_CONCAT6(_vgr,00000,ZU_,_soname,_,_fnname)
#define VG_REPLACE_FUNCTION_ZZ(_soname,_fnname) \
- VG_CONCAT6(_vgr,0000,ZZ_,_soname,_,_fnname)
+ VG_CONCAT6(_vgr,00000,ZZ_,_soname,_,_fnname)
#define VG_WRAP_FUNCTION_ZU(_soname,_fnname) \
- VG_CONCAT6(_vgw,0000,ZU_,_soname,_,_fnname)
+ VG_CONCAT6(_vgw,00000,ZU_,_soname,_,_fnname)
#define VG_WRAP_FUNCTION_ZZ(_soname,_fnname) \
- VG_CONCAT6(_vgw,0000,ZZ_,_soname,_,_fnname)
+ VG_CONCAT6(_vgw,00000,ZZ_,_soname,_,_fnname)
/* --------- Some handy Z-encoded names. --------- */
Modified: trunk/include/valgrind.h
===================================================================
--- trunk/include/valgrind.h 2011-08-18 08:10:20 UTC (rev 11990)
+++ trunk/include/valgrind.h 2011-08-18 13:09:55 UTC (rev 11991)
@@ -689,10 +689,10 @@
#define VG_CONCAT4(_aa,_bb,_cc,_dd) _aa##_bb##_cc##_dd
#define I_WRAP_SONAME_FNNAME_ZU(soname,fnname) \
- VG_CONCAT4(_vgw0000ZU_,soname,_,fnname)
+ VG_CONCAT4(_vgw00000ZU_,soname,_,fnname)
#define I_WRAP_SONAME_FNNAME_ZZ(soname,fnname) \
- VG_CONCAT4(_vgw0000ZZ_,soname,_,fnname)
+ VG_CONCAT4(_vgw00000ZZ_,soname,_,fnname)
/* Use this macro from within a wrapper function to collect the
context (address and possibly other info) of the original function.
Modified: trunk/memcheck/mc_replace_strmem.c
===================================================================
--- trunk/memcheck/mc_replace_strmem.c 2011-08-18 08:10:20 UTC (rev 11990)
+++ trunk/memcheck/mc_replace_strmem.c 2011-08-18 13:09:55 UTC (rev 11991)
@@ -53,43 +53,46 @@
THEY RUN ON THE SIMD CPU!
------------------------------------------------------------------ */
-/* Assignment of behavioural equivalence class tags: 2NNN is intended
+/* Assignment of behavioural equivalence class tags: 2NNNP is intended
to be reserved for Memcheck. Current usage:
- 2001 STRRCHR
- 2002 STRCHR
- 2003 STRCAT
- 2004 STRNCAT
- 2005 STRLCAT
- 2006 STRNLEN
- 2007 STRLEN
- 2008 STRCPY
- 2009 STRNCPY
- 2010 STRLCPY
- 2011 STRNCMP
- 2012 STRCASECMP
- 2013 STRNCASECMP
- 2014 STRCASECMP_L
- 2015 STRNCASECMP_L
- 2016 STRCMP
- 2017 MEMCHR
- 2018 MEMMOVE
- 2019 MEMCMP
- 2020 STPCPY
- 2021 MEMSET
- 2022 MEMCPY
- 2023 BCOPY
- 2024 GLIBC25___MEMMOVE_CHK
- 2025 GLIBC232_STRCHRNUL
- 2026 GLIBC232_RAWMEMCHR
- 2027 GLIBC25___STRCPY_CHK
- 2028 GLIBC25___STPCPY_CHK
- 2029 GLIBC25_MEMPCPY
- 2030 GLIBC26___MEMCPY_CHK
- 2031 STRSTR
- 2032 STRPBRK
- 2033 STRCSPN
- 2034 STRSPN
+ 20010 STRRCHR
+ 20020 STRCHR
+ 20030 STRCAT
+ 20040 STRNCAT
+ 20050 STRLCAT
+ 20060 STRNLEN
+ 20070 STRLEN
+ 20080 STRCPY
+ 20090 STRNCPY
+ 20100 STRLCPY
+ 20110 STRNCMP
+ 20120 STRCASECMP
+ 20130 STRNCASECMP
+ 20140 STRCASECMP_L
+ 20150 STRNCASECMP_L
+ 20160 STRCMP
+ 20170 MEMCHR
+
+ 20180 MEMCPY if there's a conflict between memcpy and
+ 20181 MEMMOVE memmove, prefer memmove
+
+ 20190 MEMCMP
+ 20200 STPCPY
+ 20210 MEMSET
+ 2022P unused (was previously MEMMOVE)
+ 20230 BCOPY
+ 20240 GLIBC25___MEMMOVE_CHK
+ 20250 GLIBC232_STRCHRNUL
+ 20260 GLIBC232_RAWMEMCHR
+ 20270 GLIBC25___STRCPY_CHK
+ 20280 GLIBC25___STPCPY_CHK
+ 20290 GLIBC25_MEMPCPY
+ 20300 GLIBC26___MEMCPY_CHK
+ 20310 STRSTR
+ 20320 STRPBRK
+ 20330 STRCSPN
+ 20340 STRSPN
*/
@@ -152,8 +155,8 @@
#define STRRCHR(soname, fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2001,soname,fnname)( const char* s, int c ); \
- char* VG_REPLACE_FUNCTION_EZU(2001,soname,fnname)( const char* s, int c ) \
+ char* VG_REPLACE_FUNCTION_EZU(20010,soname,fnname)( const char* s, int c ); \
+ char* VG_REPLACE_FUNCTION_EZU(20010,soname,fnname)( const char* s, int c ) \
{ \
UChar ch = (UChar)((UInt)c); \
UChar* p = (UChar*)s; \
@@ -178,8 +181,8 @@
#define STRCHR(soname, fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2002,soname,fnname) ( const char* s, int c ); \
- char* VG_REPLACE_FUNCTION_EZU(2002,soname,fnname) ( const char* s, int c ) \
+ char* VG_REPLACE_FUNCTION_EZU(20020,soname,fnname) ( const char* s, int c ); \
+ char* VG_REPLACE_FUNCTION_EZU(20020,soname,fnname) ( const char* s, int c ) \
{ \
UChar ch = (UChar)((UInt)c); \
UChar* p = (UChar*)s; \
@@ -206,9 +209,9 @@
#define STRCAT(soname, fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2003,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20030,soname,fnname) \
( char* dst, const char* src ); \
- char* VG_REPLACE_FUNCTION_EZU(2003,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20030,soname,fnname) \
( char* dst, const char* src ) \
{ \
const Char* src_orig = src; \
@@ -234,9 +237,9 @@
#endif
#define STRNCAT(soname, fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2004,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20040,soname,fnname) \
( char* dst, const char* src, SizeT n ); \
- char* VG_REPLACE_FUNCTION_EZU(2004,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20040,soname,fnname) \
( char* dst, const char* src, SizeT n ) \
{ \
const Char* src_orig = src; \
@@ -270,9 +273,9 @@
Truncation occurred if retval >= n.
*/
#define STRLCAT(soname, fnname) \
- SizeT VG_REPLACE_FUNCTION_EZU(2005,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20050,soname,fnname) \
( char* dst, const char* src, SizeT n ); \
- SizeT VG_REPLACE_FUNCTION_EZU(2005,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20050,soname,fnname) \
( char* dst, const char* src, SizeT n ) \
{ \
const Char* src_orig = src; \
@@ -307,9 +310,9 @@
#define STRNLEN(soname, fnname) \
- SizeT VG_REPLACE_FUNCTION_EZU(2006,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20060,soname,fnname) \
( const char* str, SizeT n ); \
- SizeT VG_REPLACE_FUNCTION_EZU(2006,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20060,soname,fnname) \
( const char* str, SizeT n ) \
{ \
SizeT i = 0; \
@@ -328,9 +331,9 @@
// confusing if you aren't expecting it. Other small functions in this file
// may also be inline by gcc.
#define STRLEN(soname, fnname) \
- SizeT VG_REPLACE_FUNCTION_EZU(2007,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20070,soname,fnname) \
( const char* str ); \
- SizeT VG_REPLACE_FUNCTION_EZU(2007,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20070,soname,fnname) \
( const char* str ) \
{ \
SizeT i = 0; \
@@ -345,9 +348,9 @@
#define STRCPY(soname, fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2008,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20080,soname,fnname) \
( char* dst, const char* src ); \
- char* VG_REPLACE_FUNCTION_EZU(2008,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20080,soname,fnname) \
( char* dst, const char* src ) \
{ \
const Char* src_orig = src; \
@@ -376,9 +379,9 @@
#define STRNCPY(soname, fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2009,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20090,soname,fnname) \
( char* dst, const char* src, SizeT n ); \
- char* VG_REPLACE_FUNCTION_EZU(2009,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20090,soname,fnname) \
( char* dst, const char* src, SizeT n ) \
{ \
const Char* src_orig = src; \
@@ -406,9 +409,9 @@
/* Copy up to n-1 bytes from src to dst. Then nul-terminate dst if n > 0.
Returns strlen(src). Does not zero-fill the remainder of dst. */
#define STRLCPY(soname, fnname) \
- SizeT VG_REPLACE_FUNCTION_EZU(2010,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20100,soname,fnname) \
( char* dst, const char* src, SizeT n ); \
- SizeT VG_REPLACE_FUNCTION_EZU(2010,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20100,soname,fnname) \
( char* dst, const char* src, SizeT n ) \
{ \
const char* src_orig = src; \
@@ -435,9 +438,9 @@
#define STRNCMP(soname, fnname) \
- int VG_REPLACE_FUNCTION_EZU(2011,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20110,soname,fnname) \
( const char* s1, const char* s2, SizeT nmax ); \
- int VG_REPLACE_FUNCTION_EZU(2011,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20110,soname,fnname) \
( const char* s1, const char* s2, SizeT nmax ) \
{ \
SizeT n = 0; \
@@ -463,9 +466,9 @@
#define STRCASECMP(soname, fnname) \
- int VG_REPLACE_FUNCTION_EZU(2012,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20120,soname,fnname) \
( const char* s1, const char* s2 ); \
- int VG_REPLACE_FUNCTION_EZU(2012,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20120,soname,fnname) \
( const char* s1, const char* s2 ) \
{ \
extern int tolower(int); \
@@ -492,9 +495,9 @@
#define STRNCASECMP(soname, fnname) \
- int VG_REPLACE_FUNCTION_EZU(2013,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20130,soname,fnname) \
( const char* s1, const char* s2, SizeT nmax ); \
- int VG_REPLACE_FUNCTION_EZU(2013,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20130,soname,fnname) \
( const char* s1, const char* s2, SizeT nmax ) \
{ \
extern int tolower(int); \
@@ -525,9 +528,9 @@
#define STRCASECMP_L(soname, fnname) \
- int VG_REPLACE_FUNCTION_EZU(2014,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20140,soname,fnname) \
( const char* s1, const char* s2, void* locale ); \
- int VG_REPLACE_FUNCTION_EZU(2014,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20140,soname,fnname) \
( const char* s1, const char* s2, void* locale ) \
{ \
extern int tolower_l(int, void*) __attribute__((weak)); \
@@ -553,9 +556,9 @@
#define STRNCASECMP_L(soname, fnname) \
- int VG_REPLACE_FUNCTION_EZU(2015,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20150,soname,fnname) \
( const char* s1, const char* s2, SizeT nmax, void* locale ); \
- int VG_REPLACE_FUNCTION_EZU(2015,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20150,soname,fnname) \
( const char* s1, const char* s2, SizeT nmax, void* locale ) \
{ \
extern int tolower_l(int, void*) __attribute__((weak)); \
@@ -584,9 +587,9 @@
#define STRCMP(soname, fnname) \
- int VG_REPLACE_FUNCTION_EZU(2016,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20160,soname,fnname) \
( const char* s1, const char* s2 ); \
- int VG_REPLACE_FUNCTION_EZU(2016,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20160,soname,fnname) \
( const char* s1, const char* s2 ) \
{ \
register unsigned char c1; \
@@ -612,9 +615,9 @@
#define MEMCHR(soname, fnname) \
- void* VG_REPLACE_FUNCTION_EZU(2017,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20170,soname,fnname) \
(const void *s, int c, SizeT n); \
- void* VG_REPLACE_FUNCTION_EZU(2017,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20170,soname,fnname) \
(const void *s, int c, SizeT n) \
{ \
SizeT i; \
@@ -705,16 +708,17 @@
}
#define MEMMOVE(soname, fnname) \
- MEMMOVE_OR_MEMCPY(2018, soname, fnname, 0)
+ MEMMOVE_OR_MEMCPY(20181, soname, fnname, 0)
#define MEMCPY(soname, fnname) \
- MEMMOVE_OR_MEMCPY(2022, soname, fnname, 1)
+ MEMMOVE_OR_MEMCPY(20180, soname, fnname, 1)
#if defined(VGO_linux)
/* For older memcpy we have to use memmove-like semantics and skip the
overlap check; sigh; see #275284. */
MEMMOVE(VG_Z_LIBC_SONAME, memcpyZAGLIBCZu2Zd2Zd5) /* memcpy@GLIBC_2.2.5 */
MEMCPY(VG_Z_LIBC_SONAME, memcpyZAZAGLIBCZu2Zd14) /* memcpy@@GLIBC_2.14 */
+MEMCPY(VG_Z_LIBC_SONAME, memcpy) /* fallback case */
MEMCPY(VG_Z_LD_SO_1, memcpy) /* ld.so.1 */
MEMCPY(VG_Z_LD64_SO_1, memcpy) /* ld64.so.1 */
#elif defined(VGO_darwin)
@@ -733,9 +737,9 @@
#define MEMCMP(soname, fnname) \
- int VG_REPLACE_FUNCTION_EZU(2019,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20190,soname,fnname) \
( const void *s1V, const void *s2V, SizeT n ); \
- int VG_REPLACE_FUNCTION_EZU(2019,soname,fnname) \
+ int VG_REPLACE_FUNCTION_EZU(20190,soname,fnname) \
( const void *s1V, const void *s2V, SizeT n ) \
{ \
int res; \
@@ -770,9 +774,9 @@
/* Copy SRC to DEST, returning the address of the terminating '\0' in
DEST. (minor variant of strcpy) */
#define STPCPY(soname, fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2020,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20200,soname,fnname) \
( char* dst, const char* src ); \
- char* VG_REPLACE_FUNCTION_EZU(2020,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20200,soname,fnname) \
( char* dst, const char* src ) \
{ \
const Char* src_orig = src; \
@@ -803,9 +807,9 @@
#define MEMSET(soname, fnname) \
- void* VG_REPLACE_FUNCTION_EZU(2021,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20210,soname,fnname) \
(void *s, Int c, SizeT n); \
- void* VG_REPLACE_FUNCTION_EZU(2021,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20210,soname,fnname) \
(void *s, Int c, SizeT n) \
{ \
Addr a = (Addr)s; \
@@ -827,7 +831,7 @@
#endif
-/* memmove -- use the MEMMOVE defn which also serves for memcpy. */
+/* memmove -- use the MEMMOVE defn above. */
MEMMOVE(VG_Z_LIBC_SONAME, memmove)
#if defined(VGO_darwin)
MEMMOVE(VG_Z_DYLD, memmove)
@@ -835,9 +839,9 @@
#define BCOPY(soname, fnname) \
- void VG_REPLACE_FUNCTION_EZU(2023,soname,fnname) \
+ void VG_REPLACE_FUNCTION_EZU(20230,soname,fnname) \
(const void *srcV, void *dstV, SizeT n); \
- void VG_REPLACE_FUNCTION_EZU(2023,soname,fnname) \
+ void VG_REPLACE_FUNCTION_EZU(20230,soname,fnname) \
(const void *srcV, void *dstV, SizeT n) \
{ \
SizeT i; \
@@ -863,9 +867,9 @@
/* glibc 2.5 variant of memmove which checks the dest is big enough.
There is no specific part of glibc that this is copied from. */
#define GLIBC25___MEMMOVE_CHK(soname, fnname) \
- void* VG_REPLACE_FUNCTION_EZU(2024,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20240,soname,fnname) \
(void *dstV, const void *srcV, SizeT n, SizeT destlen); \
- void* VG_REPLACE_FUNCTION_EZU(2024,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20240,soname,fnname) \
(void *dstV, const void *srcV, SizeT n, SizeT destlen) \
{ \
SizeT i; \
@@ -897,9 +901,9 @@
/* Find the first occurrence of C in S or the final NUL byte. */
#define GLIBC232_STRCHRNUL(soname, fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2025,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20250,soname,fnname) \
(const char* s, int c_in); \
- char* VG_REPLACE_FUNCTION_EZU(2025,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20250,soname,fnname) \
(const char* s, int c_in) \
{ \
unsigned char c = (unsigned char) c_in; \
@@ -916,9 +920,9 @@
/* Find the first occurrence of C in S. */
#define GLIBC232_RAWMEMCHR(soname, fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2026,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20260,soname,fnname) \
(const char* s, int c_in); \
- char* VG_REPLACE_FUNCTION_EZU(2026,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20260,soname,fnname) \
(const char* s, int c_in) \
{ \
unsigned char c = (unsigned char) c_in; \
@@ -937,9 +941,9 @@
/* glibc variant of strcpy that checks the dest is big enough.
Copied from glibc-2.5/debug/test-strcpy_chk.c. */
#define GLIBC25___STRCPY_CHK(soname,fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2027,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20270,soname,fnname) \
(char* dst, const char* src, SizeT len); \
- char* VG_REPLACE_FUNCTION_EZU(2027,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20270,soname,fnname) \
(char* dst, const char* src, SizeT len) \
{ \
char* ret = dst; \
@@ -964,9 +968,9 @@
/* glibc variant of stpcpy that checks the dest is big enough.
Copied from glibc-2.5/debug/test-stpcpy_chk.c. */
#define GLIBC25___STPCPY_CHK(soname,fnname) \
- char* VG_REPLACE_FUNCTION_EZU(2028,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20280,soname,fnname) \
(char* dst, const char* src, SizeT len); \
- char* VG_REPLACE_FUNCTION_EZU(2028,soname,fnname) \
+ char* VG_REPLACE_FUNCTION_EZU(20280,soname,fnname) \
(char* dst, const char* src, SizeT len) \
{ \
if (! len) \
@@ -989,9 +993,9 @@
/* mempcpy */
#define GLIBC25_MEMPCPY(soname, fnname) \
- void* VG_REPLACE_FUNCTION_EZU(2029,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20290,soname,fnname) \
( void *dst, const void *src, SizeT len ); \
- void* VG_REPLACE_FUNCTION_EZU(2029,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20290,soname,fnname) \
( void *dst, const void *src, SizeT len ) \
{ \
register char *d; \
@@ -1027,9 +1031,9 @@
#define GLIBC26___MEMCPY_CHK(soname, fnname) \
- void* VG_REPLACE_FUNCTION_EZU(2030,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20300,soname,fnname) \
(void* dst, const void* src, SizeT len, SizeT dstlen ); \
- void* VG_REPLACE_FUNCTION_EZU(2030,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20300,soname,fnname) \
(void* dst, const void* src, SizeT len, SizeT dstlen ) \
{ \
register char *d; \
@@ -1070,9 +1074,9 @@
#define STRSTR(soname, fnname) \
- void* VG_REPLACE_FUNCTION_EZU(2031,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20310,soname,fnname) \
(void* haystack, void* needle); \
- void* VG_REPLACE_FUNCTION_EZU(2031,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20310,soname,fnname) \
(void* haystack, void* needle) \
{ \
UChar* h = (UChar*)haystack; \
@@ -1112,9 +1116,9 @@
#define STRPBRK(soname, fnname) \
- void* VG_REPLACE_FUNCTION_EZU(2032,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20320,soname,fnname) \
(void* sV, void* acceptV); \
- void* VG_REPLACE_FUNCTION_EZU(2032,soname,fnname) \
+ void* VG_REPLACE_FUNCTION_EZU(20320,soname,fnname) \
(void* sV, void* acceptV) \
{ \
UChar* s = (UChar*)sV; \
@@ -1149,9 +1153,9 @@
#define STRCSPN(soname, fnname) \
- SizeT VG_REPLACE_FUNCTION_EZU(2033,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20330,soname,fnname) \
(void* sV, void* rejectV); \
- SizeT VG_REPLACE_FUNCTION_EZU(2033,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20330,soname,fnname) \
(void* sV, void* rejectV) \
{ \
UChar* s = (UChar*)sV; \
@@ -1187,9 +1191,9 @@
#define STRSPN(soname, fnname) \
- SizeT VG_REPLACE_FUNCTION_EZU(2034,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20340,soname,fnname) \
(void* sV, void* acceptV); \
- SizeT VG_REPLACE_FUNCTION_EZU(2034,soname,fnname) \
+ SizeT VG_REPLACE_FUNCTION_EZU(20340,soname,fnname) \
(void* sV, void* acceptV) \
{ \
UChar* s = (UChar*)sV; \
|
|
From: <sv...@va...> - 2011-08-18 08:15:09
|
Author: tom
Date: 2011-08-18 09:10:20 +0100 (Thu, 18 Aug 2011)
New Revision: 11990
Log:
Don't compare src and dst to work out which direction to iterate
in for a memcpy/memmove if the length is zero. Fixes #268563.
Modified:
trunk/memcheck/mc_replace_strmem.c
Modified: trunk/memcheck/mc_replace_strmem.c
===================================================================
--- trunk/memcheck/mc_replace_strmem.c 2011-08-17 22:13:14 UTC (rev 11989)
+++ trunk/memcheck/mc_replace_strmem.c 2011-08-18 08:10:20 UTC (rev 11990)
@@ -643,60 +643,62 @@
const Addr WS = sizeof(UWord); /* 8 or 4 */ \
const Addr WM = WS - 1; /* 7 or 3 */ \
\
- if (dst < src) { \
- \
- /* Copying backwards. */ \
- SizeT n = len; \
- Addr d = (Addr)dst; \
- Addr s = (Addr)src; \
+ if (len > 0) { \
+ if (dst < src) { \
\
- if (((s^d) & WM) == 0) { \
- /* s and d have same UWord alignment. */ \
- /* Pull up to a UWord boundary. */ \
- while ((s & WM) != 0 && n >= 1) \
+ /* Copying backwards. */ \
+ SizeT n = len; \
+ Addr d = (Addr)dst; \
+ Addr s = (Addr)src; \
+ \
+ if (((s^d) & WM) == 0) { \
+ /* s and d have same UWord alignment. */ \
+ /* Pull up to a UWord boundary. */ \
+ while ((s & WM) != 0 && n >= 1) \
+ { *(UChar*)d = *(UChar*)s; s += 1; d += 1; n -= 1; } \
+ /* Copy UWords. */ \
+ while (n >= WS) \
+ { *(UWord*)d = *(UWord*)s; s += WS; d += WS; n -= WS; } \
+ if (n == 0) \
+ return dst; \
+ } \
+ if (((s|d) & 1) == 0) { \
+ /* Both are 16-aligned; copy what we can thusly. */ \
+ while (n >= 2) \
+ { *(UShort*)d = *(UShort*)s; s += 2; d += 2; n -= 2; } \
+ } \
+ /* Copy leftovers, or everything if misaligned. */ \
+ while (n >= 1) \
{ *(UChar*)d = *(UChar*)s; s += 1; d += 1; n -= 1; } \
- /* Copy UWords. */ \
- while (n >= WS) \
- { *(UWord*)d = *(UWord*)s; s += WS; d += WS; n -= WS; } \
- if (n == 0) \
- return dst; \
- } \
- if (((s|d) & 1) == 0) { \
- /* Both are 16-aligned; copy what we can thusly. */ \
- while (n >= 2) \
- { *(UShort*)d = *(UShort*)s; s += 2; d += 2; n -= 2; } \
- } \
- /* Copy leftovers, or everything if misaligned. */ \
- while (n >= 1) \
- { *(UChar*)d = *(UChar*)s; s += 1; d += 1; n -= 1; } \
- \
- } else if (dst > src) { \
- \
- SizeT n = len; \
- Addr d = ((Addr)dst) + n; \
- Addr s = ((Addr)src) + n; \
\
- /* Copying forwards. */ \
- if (((s^d) & WM) == 0) { \
- /* s and d have same UWord alignment. */ \
- /* Back down to a UWord boundary. */ \
- while ((s & WM) != 0 && n >= 1) \
+ } else if (dst > src) { \
+ \
+ SizeT n = len; \
+ Addr d = ((Addr)dst) + n; \
+ Addr s = ((Addr)src) + n; \
+ \
+ /* Copying forwards. */ \
+ if (((s^d) & WM) == 0) { \
+ /* s and d have same UWord alignment. */ \
+ /* Back down to a UWord boundary. */ \
+ while ((s & WM) != 0 && n >= 1) \
+ { s -= 1; d -= 1; *(UChar*)d = *(UChar*)s; n -= 1; } \
+ /* Copy UWords. */ \
+ while (n >= WS) \
+ { s -= WS; d -= WS; *(UWord*)d = *(UWord*)s; n -= WS; } \
+ if (n == 0) \
+ return dst; \
+ } \
+ if (((s|d) & 1) == 0) { \
+ /* Both are 16-aligned; copy what we can thusly. */ \
+ while (n >= 2) \
+ { s -= 2; d -= 2; *(UShort*)d = *(UShort*)s; n -= 2; } \
+ } \
+ /* Copy leftovers, or everything if misaligned. */ \
+ while (n >= 1) \
{ s -= 1; d -= 1; *(UChar*)d = *(UChar*)s; n -= 1; } \
- /* Copy UWords. */ \
- while (n >= WS) \
- { s -= WS; d -= WS; *(UWord*)d = *(UWord*)s; n -= WS; } \
- if (n == 0) \
- return dst; \
+ \
} \
- if (((s|d) & 1) == 0) { \
- /* Both are 16-aligned; copy what we can thusly. */ \
- while (n >= 2) \
- { s -= 2; d -= 2; *(UShort*)d = *(UShort*)s; n -= 2; } \
- } \
- /* Copy leftovers, or everything if misaligned. */ \
- while (n >= 1) \
- { s -= 1; d -= 1; *(UChar*)d = *(UChar*)s; n -= 1; } \
- \
} \
\
return dst; \
|
|
From: Rich C. <rc...@wi...> - 2011-08-18 03:05:40
|
Nightly build on ultra ( gcc 4.5.1 Linux 2.6.37.1-1.2-desktop x86_64 )
Started at 2011-08-17 21:30:01 CDT
Ended at 2011-08-17 22:05:29 CDT
Results differ from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 584 tests, 13 stderr failures, 1 stdout failure, 1 stderrB failure, 0 stdoutB failures, 1 post failure ==
gdbserver_tests/mssnapshot (stderrB)
memcheck/tests/err_disable3 (stderr)
memcheck/tests/err_disable4 (stderr)
memcheck/tests/linux/stack_switch (stderr)
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/overlap (stderr)
memcheck/tests/sbfragment (stdout)
massif/tests/big-alloc (post)
helgrind/tests/locked_vs_unlocked1_fwd (stderr)
helgrind/tests/locked_vs_unlocked1_rev (stderr)
helgrind/tests/locked_vs_unlocked2 (stderr)
helgrind/tests/locked_vs_unlocked3 (stderr)
helgrind/tests/pth_barrier3 (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
drd/tests/annotate_smart_pointer2 (stderr)
exp-sgcheck/tests/bad_percentify (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
== 584 tests, 13 stderr failures, 0 stdout failures, 1 stderrB failure, 0 stdoutB failures, 0 post failures ==
gdbserver_tests/mssnapshot (stderrB)
memcheck/tests/err_disable3 (stderr)
memcheck/tests/err_disable4 (stderr)
memcheck/tests/linux/stack_switch (stderr)
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/overlap (stderr)
helgrind/tests/locked_vs_unlocked1_fwd (stderr)
helgrind/tests/locked_vs_unlocked1_rev (stderr)
helgrind/tests/locked_vs_unlocked2 (stderr)
helgrind/tests/locked_vs_unlocked3 (stderr)
helgrind/tests/pth_barrier3 (stderr)
helgrind/tests/tc06_two_races_xml (stderr)
drd/tests/annotate_smart_pointer2 (stderr)
exp-sgcheck/tests/bad_percentify (stderr)
=================================================
== Difference between 24 hours ago and now ==
=================================================
*** old.short Wed Aug 17 21:46:55 2011
--- new.short Wed Aug 17 22:05:29 2011
***************
*** 8,10 ****
! == 584 tests, 13 stderr failures, 0 stdout failures, 1 stderrB failure, 0 stdoutB failures, 0 post failures ==
gdbserver_tests/mssnapshot (stderrB)
--- 8,10 ----
! == 584 tests, 13 stderr failures, 1 stdout failure, 1 stderrB failure, 0 stdoutB failures, 1 post failure ==
gdbserver_tests/mssnapshot (stderrB)
***************
*** 15,16 ****
--- 15,18 ----
memcheck/tests/overlap (stderr)
+ memcheck/tests/sbfragment (stdout)
+ massif/tests/big-alloc (post)
helgrind/tests/locked_vs_unlocked1_fwd (stderr)
=================================================
./valgrind-new/drd/tests/annotate_smart_pointer2.stderr.diff
=================================================
--- annotate_smart_pointer2.stderr.exp 2011-08-17 21:50:10.965365920 -0500
+++ annotate_smart_pointer2.stderr.out 2011-08-17 22:03:32.218771166 -0500
@@ -1,10 +1,4 @@
-Conflicting store by thread x at 0x........ size 4
- at 0x........: main (annotate_smart_pointer.cpp:?)
-Address 0x........ is at offset ... from 0x......... Allocation context:
- at 0x........: ...operator new... (vg_replace_malloc.c:...)
- by 0x........: main (annotate_smart_pointer.cpp:?)
-
Done.
-ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/exp-sgcheck/tests/bad_percentify.stderr.diff-glibc28-amd64
=================================================
--- bad_percentify.stderr.exp-glibc28-amd64 2011-08-17 21:49:53.346764209 -0500
+++ bad_percentify.stderr.out 2011-08-17 22:05:20.042464706 -0500
@@ -16,7 +16,7 @@
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........: vprintf_WRK (bad_percentify.c:101)
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)
=================================================
./valgrind-new/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2011-08-17 21:47:40.169217266 -0500
+++ mssnapshot.stderrB.out 2011-08-17 21:58:09.416721161 -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
v.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-new/helgrind/tests/locked_vs_unlocked1_fwd.stderr.diff
=================================================
--- locked_vs_unlocked1_fwd.stderr.exp 2011-08-17 21:47:23.439646257 -0500
+++ locked_vs_unlocked1_fwd.stderr.out 2011-08-17 22:02:31.859704093 -0500
@@ -2,15 +2,15 @@
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
---Thread-Announcement------------------------------------------
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
----------------------------------------------------------------
=================================================
./valgrind-new/helgrind/tests/locked_vs_unlocked1_rev.stderr.diff
=================================================
--- locked_vs_unlocked1_rev.stderr.exp 2011-08-17 21:47:23.446646495 -0500
+++ locked_vs_unlocked1_rev.stderr.out 2011-08-17 22:02:33.175749159 -0500
@@ -2,15 +2,15 @@
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
---Thread-Announcement------------------------------------------
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
----------------------------------------------------------------
=================================================
./valgrind-new/helgrind/tests/locked_vs_unlocked2.stderr.diff
=================================================
--- locked_vs_unlocked2.stderr.exp 2011-08-17 21:47:23.446646495 -0500
+++ locked_vs_unlocked2.stderr.out 2011-08-17 22:02:34.499794499 -0500
@@ -2,15 +2,15 @@
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
---Thread-Announcement------------------------------------------
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
----------------------------------------------------------------
=================================================
./valgrind-new/helgrind/tests/locked_vs_unlocked3.stderr.diff
=================================================
--- locked_vs_unlocked3.stderr.exp 2011-08-17 21:47:23.426645813 -0500
+++ locked_vs_unlocked3.stderr.out 2011-08-17 22:02:35.823839838 -0500
@@ -2,15 +2,15 @@
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
---Thread-Announcement------------------------------------------
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
----------------------------------------------------------------
=================================================
./valgrind-new/helgrind/tests/pth_barrier3.stderr.diff
=================================================
--- pth_barrier3.stderr.exp 2011-08-17 21:47:23.432646017 -0500
+++ pth_barrier3.stderr.out 2011-08-17 22:02:36.781872644 -0500
@@ -2,15 +2,15 @@
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
---Thread-Announcement------------------------------------------
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
----------------------------------------------------------------
=================================================
./valgrind-new/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2011-08-17 21:47:23.447646529 -0500
+++ tc06_two_races_xml.stderr.out 2011-08-17 22:02:44.035121023 -0500
@@ -40,17 +40,16 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
- <dir>...</dir>
- <file>clone.S</file>
- <line>...</line>
+ </frame>
+ <frame>
+ <ip>0x........</ip>
+ <obj>...</obj>
+ <fn>do_clone.clone.0</fn>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>pthread_create@@GLIBC_2.2.5</fn>
- <dir>...</dir>
- <file>createthread.c</file>
- <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
@@ -122,12 +121,6 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
- <dir>...</dir>
- <file>pthread_create.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
@@ -177,12 +170,6 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
- <dir>...</dir>
- <file>pthread_create.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
@@ -232,12 +219,6 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
- <dir>...</dir>
- <file>pthread_create.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
@@ -287,12 +268,6 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
- <dir>...</dir>
- <file>pthread_create.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
=================================================
./valgrind-new/massif/tests/big-alloc.post.diff
=================================================
--- big-alloc.post.exp 2011-08-17 21:48:27.777842443 -0500
+++ big-alloc.post.out 2011-08-17 22:00:39.583860141 -0500
@@ -36,19 +36,19 @@
n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
--------------------------------------------------------------------------------
0 0 0 0 0 0
- 1 10,489,832 10,489,832 10,485,760 4,072 0
- 2 20,979,664 20,979,664 20,971,520 8,144 0
- 3 31,469,496 31,469,496 31,457,280 12,216 0
- 4 41,959,328 41,959,328 41,943,040 16,288 0
- 5 52,449,160 52,449,160 52,428,800 20,360 0
- 6 62,938,992 62,938,992 62,914,560 24,432 0
- 7 73,428,824 73,428,824 73,400,320 28,504 0
- 8 83,918,656 83,918,656 83,886,080 32,576 0
- 9 94,408,488 94,408,488 94,371,840 36,648 0
-99.96% (94,371,840B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->99.96% (94,371,840B) 0x........: main (big-alloc.c:12)
+ 1 10,485,768 10,485,768 10,485,760 8 0
+ 2 20,971,536 20,971,536 20,971,520 16 0
+ 3 31,457,304 31,457,304 31,457,280 24 0
+ 4 41,943,072 41,943,072 41,943,040 32 0
+ 5 52,428,840 52,428,840 52,428,800 40 0
+ 6 62,914,608 62,914,608 62,914,560 48 0
+ 7 73,400,376 73,400,376 73,400,320 56 0
+ 8 83,886,144 83,886,144 83,886,080 64 0
+ 9 94,371,912 94,371,912 94,371,840 72 0
+100.00% (94,371,840B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->100.00% (94,371,840B) 0x........: main (big-alloc.c:12)
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 10 104,898,320 104,898,320 104,857,600 40,720 0
+ 10 104,857,680 104,857,680 104,857,600 80 0
=================================================
./valgrind-new/massif/tests/big-alloc.post.diff-64bit
=================================================
--- big-alloc.post.exp-64bit 2011-08-17 21:48:27.773842307 -0500
+++ big-alloc.post.out 2011-08-17 22:00:39.583860141 -0500
@@ -36,19 +36,19 @@
n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
--------------------------------------------------------------------------------
0 0 0 0 0 0
- 1 10,489,800 10,489,800 10,485,760 4,040 0
- 2 20,979,600 20,979,600 20,971,520 8,080 0
- 3 31,469,400 31,469,400 31,457,280 12,120 0
- 4 41,959,200 41,959,200 41,943,040 16,160 0
- 5 52,449,000 52,449,000 52,428,800 20,200 0
- 6 62,938,800 62,938,800 62,914,560 24,240 0
- 7 73,428,600 73,428,600 73,400,320 28,280 0
- 8 83,918,400 83,918,400 83,886,080 32,320 0
- 9 94,408,200 94,408,200 94,371,840 36,360 0
-99.96% (94,371,840B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
-->99.96% (94,371,840B) 0x........: main (big-alloc.c:12)
+ 1 10,485,768 10,485,768 10,485,760 8 0
+ 2 20,971,536 20,971,536 20,971,520 16 0
+ 3 31,457,304 31,457,304 31,457,280 24 0
+ 4 41,943,072 41,943,072 41,943,040 32 0
+ 5 52,428,840 52,428,840 52,428,800 40 0
+ 6 62,914,608 62,914,608 62,914,560 48 0
+ 7 73,400,376 73,400,376 73,400,320 56 0
+ 8 83,886,144 83,886,144 83,886,080 64 0
+ 9 94,371,912 94,371,912 94,371,840 72 0
+100.00% (94,371,840B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->100.00% (94,371,840B) 0x........: main (big-alloc.c:12)
--------------------------------------------------------------------------------
n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
--------------------------------------------------------------------------------
- 10 104,898,000 104,898,000 104,857,600 40,400 0
+ 10 104,857,680 104,857,680 104,857,600 80 0
=================================================
./valgrind-new/memcheck/tests/err_disable3.stderr.diff
=================================================
--- err_disable3.stderr.exp 2011-08-17 21:48:17.400488173 -0500
+++ err_disable3.stderr.out 2011-08-17 21:58:48.329052559 -0500
@@ -11,8 +11,7 @@
Invalid read of size 1
at 0x........: err (err_disable3.c:25)
by 0x........: child_fn (err_disable3.c:31)
- by 0x........: start_thread (pthread_create.c:300)
- by 0x........: ???
+ by 0x........: start_thread (in /lib64/libpthread-2.11.3.so)
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable3.c:42)
=================================================
./valgrind-new/memcheck/tests/err_disable4.stderr.diff
=================================================
--- err_disable4.stderr.exp 2011-08-17 21:48:17.370487149 -0500
+++ err_disable4.stderr.out 2011-08-17 21:58:49.731100533 -0500
@@ -1503,1001 +1503,7 @@
at 0x........: err (err_disable4.c:41)
by 0x........: child_fn_2 (err_disable4.c:55)
by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable4.c:68)
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/linux/stack_switch.stderr.diff
=================================================
--- stack_switch.stderr.exp 2011-08-17 21:48:06.422113402 -0500
+++ stack_switch.stderr.out 2011-08-17 21:59:05.446638296 -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-08-17 21:48:17.414488651 -0500
+++ origin5-bz2.stderr.out 2011-08-17 21:59:28.617431222 -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-08-17 21:48:17.367487046 -0500
+++ origin5-bz2.stderr.out 2011-08-17 21:59:28.617431222 -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-08-17 21:48:17.426489061 -0500
+++ origin5-bz2.stderr.out 2011-08-17 21:59:28.617431222 -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-08-17 21:48:17.364486943 -0500
+++ origin5-bz2.stderr.out 2011-08-17 21:59:28.617431222 -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/overlap.stderr.diff
=================================================
--- overlap.stderr.exp 2011-08-17 21:48:17.391487865 -0500
+++ overlap.stderr.out 2011-08-17 21:59:33.428595872 -0500
@@ -1,11 +1,3 @@
-Source and destination overlap in memcpy(0x........, 0x........, 21)
- at 0x........: memcpy (mc_replace_strmem.c:...)
- by 0x........: main (overlap.c:40)
-
-Source and destination overlap in memcpy(0x........, 0x........, 21)
- at 0x........: memcpy (mc_replace_strmem.c:...)
- by 0x........: main (overlap.c:42)
-
Source and destination overlap in strncpy(0x........, 0x........, 21)
at 0x........: strncpy (mc_replace_strmem.c:...)
by 0x........: main (overlap.c:45)
=================================================
./valgrind-new/memcheck/tests/sbfragment.stdout.diff
=================================================
--- sbfragment.stdout.exp 2011-08-17 21:48:17.406488377 -0500
+++ sbfragment.stdout.out 2011-08-17 21:59:40.619841980 -0500
@@ -1,2 +1,2433 @@
+failure 1 could not allocate size 18304008
+failure 2 could not allocate size 18336008
+failure 3 could not allocate size 18368008
+failure 4 could not allocate size 18400008
+failure 5 could not allocate size 18432008
+failure 6 could not allocate size 18464008
+failure 7 could not allocate size 18496008
+failure 8 could not allocate size 18528008
+failure 9 could not allocate size 18560008
+failure 10 could not allocate size 18592008
+failure 11 could not allocate size 18624008
+failure 12 could not allocate size 18656008
+failure 13 could not allocate size 18688008
+failure 14 could not allocate size 18720008
+failure 15 could not allocate size 18752008
+failure 16 could not allocate size 18784008
+failure 17 could not allocate size 18816008
+failure 18 could not allocate size 18848008
+failure 19 could not allocate size 18880008
+failure 20 could not allocate size 18912008
+failure 21 could not allocate size 18944008
+failure 22 could not allocate size 18976008
+failure 23 could not allocate size 19008008
+failure 24 could not allocate size 19040008
+failure 25 could not allocate size 19072008
+failure 26 could not allocate size 19104008
+failure 27 could not allocate size 19136008
+failure 28 could not allocate size 19168008
+failure 29 could not allocate size 19200008
+failure 30 could not allocate size 19232008
+failure 31 could not allocate size 19264008
+failure 32 could not allocate size 19296008
+failure 33 could not allocate size 19328008
+failure 34 could not allocate size 19360008
+failure 35 could not allocate size 19392008
+failure 36 could not allocate size 19424008
+failure 37 could not allocate size 19456008
+failure 38 could not allocate size 19488008
+failure 39 could not allocate size 19520008
+failure 40 could not allocate size 19552008
+failure 41 could not allocate size 19584008
+failure 42 could not allocate size 19616008
+failure 43 could not allocate size 19648008
+failure 44 could not allocate size 19680008
+failure 45 could not allocate size 19712008
+failure 46 could not allocate size 19744008
+failure 47 could not allocate size 19776008
+failure 48 could not allocate size 19808008
+failure 49 could not allocate size 19840008
+failure 50 could not allocate size 19872008
+failure 51 could not allocate size 19904008
+failure 52 could not allocate size 19936008
+failure 53 could not allocate size 19968008
+failure 54 could not allocate size 20000008
+failure 55 could not allocate size 20032008
+failure 56 could not allocate size 20064008
+failure 57 could not allocate size 20096008
+failure 58 could not allocate size 20128008
+failure 59 could not allocate size 20160008
+failure 60 could not allocate size 20192008
+failure 61 could not allocate size 20224008
+failure 62 could not allocate size 20256008
+failure 63 could not allocate size 20288008
+failure 64 could not allocate size 20320008
+failure 65 could not allocate size 20352008
+failure 66 could not allocate size 20384008
+failure 67 could not allocate size 20416008
+failure 68 could not allocate size 20448008
+failure 69 could not allocate size 20480008
+failure 70 could not allocate size 20512008
+failure 71 could not allocate size 20544008
+failure 72 could not allocate size 20576008
+failure 73 could not allocate size 20608008
+failure 74 could not allocate size 20640008
+failure 75 could not allocate size 20672008
+failure 76 could not allocate size 20704008
+failure 77 could not allocate size 20736008
+failure 78 could not allocate size 20768008
+failure 79 could not allocate size 20800008
+failure 80 could not allocate size 20832008
+failure 81 could not allocate size 20864008
+failure 82 could not allocate size 20896008
+failure 83 could not allocate size 20928008
+failure 84 could not allocate size 20960008
+failure 85 could not allocate size 20992008
+failure 86 could not allocate size 21024008
+failure 87 could not allocate size 21056008
+failure 88 could not allocate size 21088008
+failure 89 could not allocate size 21120008
+failure 90 could not allocate size 21152008
+failure 91 could not allocate size 21184008
+failure 92 could not allocate size 21216008
+failure 93 could not allocate size 21248008
+failure 94 could not allocate size 21280008
+failure 95 could not allocate size 21312008
+failure 96 could not allocate size 21344008
+failure 97 could not allocate size 21376008
<truncated beyond 100 lines>
=================================================
./valgrind-old/drd/tests/annotate_smart_pointer2.stderr.diff
=================================================
--- annotate_smart_pointer2.stderr.exp 2011-08-17 21:33:23.056802556 -0500
+++ annotate_smart_pointer2.stderr.out 2011-08-17 21:44:56.910573048 -0500
@@ -1,10 +1,4 @@
-Conflicting store by thread x at 0x........ size 4
- at 0x........: main (annotate_smart_pointer.cpp:?)
-Address 0x........ is at offset ... from 0x......... Allocation context:
- at 0x........: ...operator new... (vg_replace_malloc.c:...)
- by 0x........: main (annotate_smart_pointer.cpp:?)
-
Done.
-ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/exp-sgcheck/tests/bad_percentify.stderr.diff-glibc28-amd64
=================================================
--- bad_percentify.stderr.exp-glibc28-amd64 2011-08-17 21:33:02.839078980 -0500
+++ bad_percentify.stderr.out 2011-08-17 21:46:45.447349655 -0500
@@ -16,7 +16,7 @@
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........: vprintf_WRK (bad_percentify.c:101)
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)
=================================================
./valgrind-old/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2011-08-17 21:30:46.386192573 -0500
+++ mssnapshot.stderrB.out 2011-08-17 21:39:39.764265433 -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
v.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-old/helgrind/tests/locked_vs_unlocked1_fwd.stderr.diff
=================================================
--- locked_vs_unlocked1_fwd.stderr.exp 2011-08-17 21:30:27.780525908 -0500
+++ locked_vs_unlocked1_fwd.stderr.out 2011-08-17 21:43:57.051440587 -0500
@@ -2,15 +2,15 @@
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
---Thread-Announcement------------------------------------------
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
----------------------------------------------------------------
=================================================
./valgrind-old/helgrind/tests/locked_vs_unlocked1_rev.stderr.diff
=================================================
--- locked_vs_unlocked1_rev.stderr.exp 2011-08-17 21:30:27.787526160 -0500
+++ locked_vs_unlocked1_rev.stderr.out 2011-08-17 21:43:58.367487479 -0500
@@ -2,15 +2,15 @@
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
---Thread-Announcement------------------------------------------
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
----------------------------------------------------------------
=================================================
./valgrind-old/helgrind/tests/locked_vs_unlocked2.stderr.diff
=================================================
--- locked_vs_unlocked2.stderr.exp 2011-08-17 21:30:27.786526124 -0500
+++ locked_vs_unlocked2.stderr.out 2011-08-17 21:43:59.685534442 -0500
@@ -2,15 +2,15 @@
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
---Thread-Announcement------------------------------------------
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
----------------------------------------------------------------
=================================================
./valgrind-old/helgrind/tests/locked_vs_unlocked3.stderr.diff
=================================================
--- locked_vs_unlocked3.stderr.exp 2011-08-17 21:30:27.771525586 -0500
+++ locked_vs_unlocked3.stderr.out 2011-08-17 21:44:01.005581476 -0500
@@ -2,15 +2,15 @@
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
---Thread-Announcement------------------------------------------
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
----------------------------------------------------------------
=================================================
./valgrind-old/helgrind/tests/pth_barrier3.stderr.diff
=================================================
--- pth_barrier3.stderr.exp 2011-08-17 21:30:27.775525730 -0500
+++ pth_barrier3.stderr.out 2011-08-17 21:44:01.946615005 -0500
@@ -2,15 +2,15 @@
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
---Thread-Announcement------------------------------------------
Thread #x was created
at 0x........: clone (in /...libc...)
+ by 0x........: do_clone.clone.0 (in /...libpthread...)
by 0x........: pthread_create@@GLIBC_2.2.5 (in /...libpthread...)
- by 0x........: pthread_create_WRK (hg_intercepts.c:...)
----------------------------------------------------------------
=================================================
./valgrind-old/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2011-08-17 21:30:27.788526196 -0500
+++ tc06_two_races_xml.stderr.out 2011-08-17 21:44:09.154871832 -0500
@@ -40,17 +40,16 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
- <dir>...</dir>
- <file>clone.S</file>
- <line>...</line>
+ </frame>
+ <frame>
+ <ip>0x........</ip>
+ <obj>...</obj>
+ <fn>do_clone.clone.0</fn>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>pthread_create@@GLIBC_2.2.5</fn>
- <dir>...</dir>
- <file>createthread.c</file>
- <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
@@ -122,12 +121,6 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
- <dir>...</dir>
- <file>pthread_create.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
@@ -177,12 +170,6 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
- <dir>...</dir>
- <file>pthread_create.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
@@ -232,12 +219,6 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
- <dir>...</dir>
- <file>pthread_create.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
@@ -287,12 +268,6 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
- <dir>...</dir>
- <file>pthread_create.c</file>
- <line>...</line>
- </frame>
- <frame>
- <ip>0x........</ip>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
=================================================
./valgrind-old/memcheck/tests/err_disable3.stderr.diff
=================================================
--- err_disable3.stderr.exp 2011-08-17 21:31:20.404411244 -0500
+++ err_disable3.stderr.out 2011-08-17 21:40:16.352571165 -0500
@@ -11,8 +11,7 @@
Invalid read of size 1
at 0x........: err (err_disable3.c:25)
by 0x........: child_fn (err_disable3.c:31)
- by 0x........: start_thread (pthread_create.c:300)
- by 0x........: ???
+ by 0x........: start_thread (in /lib64/libpthread-2.11.3.so)
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable3.c:42)
=================================================
./valgrind-old/memcheck/tests/err_disable4.stderr.diff
=================================================
--- err_disable4.stderr.exp 2011-08-17 21:31:20.375410206 -0500
+++ err_disable4.stderr.out 2011-08-17 21:40:17.765621586 -0500
@@ -1503,1001 +1503,7 @@
at 0x........: err (err_disable4.c:41)
by 0x........: child_fn_2 (err_disable4.c:55)
by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
Address 0x........ is 5 bytes inside a block of size 10 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (err_disable4.c:68)
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
-
-Thread x:
-Invalid read of size 1
- at 0x........: err (err_disable4.c:41)
- by 0x........: child_fn_2 (err_disable4.c:55)
- by 0x........: start_thread (in /...libpthread...)
- by 0x........: ???
- Address 0x........ is 5 bytes inside a block of size 10 free'd
- at 0x........: free (vg_replace_malloc.c:...)
- by 0x........: main (err_disable4.c:68)
<truncated beyond 100 lines>
=================================================
./valgrind-old/memcheck/tests/linux/stack_switch.stderr.diff
=================================================
--- stack_switch.stderr.exp 2011-08-17 21:31:12.260119512 -0500
+++ stack_switch.stderr.out 2011-08-17 21:40:33.638187927 -0500
@@ -0,0 +1,3 @@
+Syscall param clone(child_tidptr) contains uninitialised byte(s)
+ ...
+
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2011-08-17 21:31:20.418411746 -0500
+++ origin5-bz2.stderr.out 2011-08-17 21:40:56.482002900 -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-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2011-08-17 21:31:20.372410098 -0500
+++ origin5-bz2.stderr.out 2011-08-17 21:40:56.482002900 -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-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2011-08-17 21:31:20.430412176 -0500
+++ origin5-bz2.stderr.out 2011-08-17 21:40:56.482002900 -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 valu...
[truncated message content] |
|
From: Tom H. <th...@cy...> - 2011-08-18 03:03:08
|
Nightly build on bristol ( x86_64, Fedora 9 ) Started at 2011-08-18 03:40:44 BST Ended at 2011-08-18 04:02:48 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 == 574 tests, 6 stderr failures, 5 stdout failures, 0 stderrB failures, 0 stdoutB failures, 1 post failure == memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/overlap (stderr) memcheck/tests/sbfragment (stdout) massif/tests/big-alloc (post) 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) ================================================= == 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 == 574 tests, 6 stderr failures, 4 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/overlap (stderr) 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) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Thu Aug 18 03:51:01 2011 --- new.short Thu Aug 18 04:02:48 2011 *************** *** 8,10 **** ! == 574 tests, 6 stderr failures, 4 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable3 (stderr) --- 8,10 ---- ! == 574 tests, 6 stderr failures, 5 stdout failures, 0 stderrB failures, 0 stdoutB failures, 1 post failure == memcheck/tests/err_disable3 (stderr) *************** *** 12,13 **** --- 12,15 ---- memcheck/tests/overlap (stderr) + memcheck/tests/sbfragment (stdout) + massif/tests/big-alloc (post) none/tests/amd64/bug132918 (stdout) |
|
From: Tom H. <th...@cy...> - 2011-08-18 02:51:38
|
Nightly build on bristol ( x86_64, Fedora 11 ) Started at 2011-08-18 03:30:27 BST Ended at 2011-08-18 03:51:15 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 == 574 tests, 11 stderr failures, 5 stdout failures, 0 stderrB failures, 0 stdoutB failures, 1 post failure == memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/linux/stack_switch (stderr) memcheck/tests/long_namespace_xml (stderr) memcheck/tests/overlap (stderr) memcheck/tests/sbfragment (stdout) massif/tests/big-alloc (post) none/tests/amd64/bug132918 (stdout) none/tests/amd64/fxtract (stdout) none/tests/amd64/sse4-64 (stdout) none/tests/x86/fxtract (stdout) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 574 tests, 12 stderr failures, 4 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/linux/stack_switch (stderr) memcheck/tests/long_namespace_xml (stderr) memcheck/tests/overlap (stderr) none/tests/amd64/bug132918 (stdout) none/tests/amd64/fxtract (stdout) none/tests/amd64/sse4-64 (stdout) none/tests/x86/fxtract (stdout) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) drd/tests/annotate_smart_pointer2 (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Thu Aug 18 03:41:28 2011 --- new.short Thu Aug 18 03:51:15 2011 *************** *** 8,10 **** ! == 574 tests, 12 stderr failures, 4 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable3 (stderr) --- 8,10 ---- ! == 574 tests, 11 stderr failures, 5 stdout failures, 0 stderrB failures, 0 stdoutB failures, 1 post failure == memcheck/tests/err_disable3 (stderr) *************** *** 14,15 **** --- 14,17 ---- memcheck/tests/overlap (stderr) + memcheck/tests/sbfragment (stdout) + massif/tests/big-alloc (post) none/tests/amd64/bug132918 (stdout) *************** *** 24,26 **** helgrind/tests/tc06_two_races_xml (stderr) - drd/tests/annotate_smart_pointer2 (stderr) --- 26,27 ---- |
|
From: Tom H. <th...@cy...> - 2011-08-18 02:43:14
|
Nightly build on bristol ( x86_64, Fedora 13 ) Started at 2011-08-18 03:20:54 BST Ended at 2011-08-18 03:42:27 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 == 574 tests, 9 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 1 post failure == memcheck/tests/err_disable3 (stderr) memcheck/tests/linux/stack_switch (stderr) memcheck/tests/overlap (stderr) memcheck/tests/sbfragment (stdout) massif/tests/big-alloc (post) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 574 tests, 9 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable3 (stderr) memcheck/tests/linux/stack_switch (stderr) memcheck/tests/overlap (stderr) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Thu Aug 18 03:31:36 2011 --- new.short Thu Aug 18 03:42:27 2011 *************** *** 8,10 **** ! == 574 tests, 9 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable3 (stderr) --- 8,10 ---- ! == 574 tests, 9 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 1 post failure == memcheck/tests/err_disable3 (stderr) *************** *** 12,13 **** --- 12,15 ---- memcheck/tests/overlap (stderr) + memcheck/tests/sbfragment (stdout) + massif/tests/big-alloc (post) helgrind/tests/locked_vs_unlocked1_fwd (stderr) |
|
From: Tom H. <th...@cy...> - 2011-08-18 02:35:46
|
Nightly build on bristol ( x86_64, Fedora 14 ) Started at 2011-08-18 03:11:01 BST Ended at 2011-08-18 03:34:07 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 == 588 tests, 12 stderr failures, 1 stdout failure, 9 stderrB failures, 0 stdoutB failures, 1 post failure == gdbserver_tests/mcbreak (stderrB) gdbserver_tests/mcclean_after_fork (stderrB) gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/mcleak (stderrB) gdbserver_tests/mcmain_pic (stderrB) gdbserver_tests/mcvabits (stderrB) gdbserver_tests/mssnapshot (stderrB) gdbserver_tests/nlpasssigalrm (stderrB) gdbserver_tests/nlsigvgdb (stderrB) memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/linux/stack_switch (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) memcheck/tests/sbfragment (stdout) massif/tests/big-alloc (post) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) exp-sgcheck/tests/bad_percentify (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 == 588 tests, 12 stderr failures, 0 stdout failures, 9 stderrB failures, 0 stdoutB failures, 0 post failures == gdbserver_tests/mcbreak (stderrB) gdbserver_tests/mcclean_after_fork (stderrB) gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/mcleak (stderrB) gdbserver_tests/mcmain_pic (stderrB) gdbserver_tests/mcvabits (stderrB) gdbserver_tests/mssnapshot (stderrB) gdbserver_tests/nlpasssigalrm (stderrB) gdbserver_tests/nlsigvgdb (stderrB) memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/linux/stack_switch (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) exp-sgcheck/tests/bad_percentify (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Thu Aug 18 03:22:04 2011 --- new.short Thu Aug 18 03:34:07 2011 *************** *** 8,10 **** ! == 588 tests, 12 stderr failures, 0 stdout failures, 9 stderrB failures, 0 stdoutB failures, 0 post failures == gdbserver_tests/mcbreak (stderrB) --- 8,10 ---- ! == 588 tests, 12 stderr failures, 1 stdout failure, 9 stderrB failures, 0 stdoutB failures, 1 post failure == gdbserver_tests/mcbreak (stderrB) *************** *** 23,24 **** --- 23,26 ---- memcheck/tests/overlap (stderr) + memcheck/tests/sbfragment (stdout) + massif/tests/big-alloc (post) helgrind/tests/locked_vs_unlocked1_fwd (stderr) |
|
From: Tom H. <th...@cy...> - 2011-08-18 02:24:32
|
Nightly build on bristol ( x86_64, Fedora 15 ) Started at 2011-08-18 03:01:37 BST Ended at 2011-08-18 03:24:06 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 == 588 tests, 13 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 1 post failure == memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) memcheck/tests/sbfragment (stdout) massif/tests/big-alloc (post) none/tests/shell (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) exp-sgcheck/tests/bad_percentify (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 == 588 tests, 13 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) none/tests/shell (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/pth_barrier3 (stderr) helgrind/tests/tc06_two_races_xml (stderr) exp-sgcheck/tests/bad_percentify (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Thu Aug 18 03:12:53 2011 --- new.short Thu Aug 18 03:24:06 2011 *************** *** 8,10 **** ! == 588 tests, 13 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable3 (stderr) --- 8,10 ---- ! == 588 tests, 13 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 1 post failure == memcheck/tests/err_disable3 (stderr) *************** *** 13,14 **** --- 13,16 ---- memcheck/tests/overlap (stderr) + memcheck/tests/sbfragment (stdout) + massif/tests/big-alloc (post) none/tests/shell (stderr) |