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
(17) |
2
(11) |
3
(6) |
4
(6) |
|
5
(10) |
6
(5) |
7
(3) |
8
(7) |
9
(4) |
10
(4) |
11
(3) |
|
12
(3) |
13
(17) |
14
(18) |
15
(32) |
16
(22) |
17
(18) |
18
(10) |
|
19
(4) |
20
(3) |
21
(8) |
22
(15) |
23
(32) |
24
(28) |
25
(18) |
|
26
(20) |
27
(16) |
28
(28) |
29
(28) |
30
(27) |
|
|
|
From: <sv...@va...> - 2009-04-27 22:50:43
|
Author: njn
Date: 2009-04-27 23:50:26 +0100 (Mon, 27 Apr 2009)
New Revision: 9651
Log:
Merge r9614 (make more_x86_fp compile on darwin) from the DARWIN branch.
Modified:
trunk/memcheck/tests/x86/more_x86_fp.c
Modified: trunk/memcheck/tests/x86/more_x86_fp.c
===================================================================
--- trunk/memcheck/tests/x86/more_x86_fp.c 2009-04-27 22:32:33 UTC (rev 9650)
+++ trunk/memcheck/tests/x86/more_x86_fp.c 2009-04-27 22:50:26 UTC (rev 9651)
@@ -187,8 +187,8 @@
for(i=0;i<8;i++)
dtab[i] = i + 1;
- TEST_ENV(&float_env16, "data16 fnstenv", "data16 fldenv");
- TEST_ENV(&float_env16, "data16 fnsave", "data16 frstor");
+ TEST_ENV(&float_env16, "data16/fnstenv", "data16/fldenv");
+ TEST_ENV(&float_env16, "data16/fnsave", "data16/frstor");
TEST_ENV(&float_env32, "fnstenv", "fldenv");
TEST_ENV(&float_env32, "fnsave", "frstor");
|
|
From: <sv...@va...> - 2009-04-27 22:32:46
|
Author: njn
Date: 2009-04-27 23:32:33 +0100 (Mon, 27 Apr 2009)
New Revision: 9650
Log:
Be less whiny about missing UUIDs in readmacho.c. Fixes three test
failures. Patch is from Julian.
Modified:
branches/DARWIN/coregrind/m_debuginfo/readmacho.c
Modified: branches/DARWIN/coregrind/m_debuginfo/readmacho.c
===================================================================
--- branches/DARWIN/coregrind/m_debuginfo/readmacho.c 2009-04-27 21:07:30 UTC (rev 9649)
+++ branches/DARWIN/coregrind/m_debuginfo/readmacho.c 2009-04-27 22:32:33 UTC (rev 9650)
@@ -826,21 +826,16 @@
VG_(deleteXA)( candSyms );
}
- /* Now we move on to reading the DWARF3, if we can find any. Since
- this always appears to come from dSYM files, we first need to
- check that we can verify that we've got the right file. That
- means, if a UUID was not found in the primary object, we might
- as well stop now, since without it we won't be able to verify
- that the dSYM matches the primary. And our policy is to load no
- debug info rather than incorrect debug info. Except, don't
- bother to complain about system libraries, it's pointless. */
- if (!have_uuid) {
- if (!is_systemish_library_name(di->filename)) {
- ML_(symerr)(di, True, "no UUID in Mach-O primary; "
- "so dSYM correctness can't be verified");
- }
+ /* If there's no UUID in the primary, don't even bother to try and
+ read any DWARF, since we won't be able to verify it matches.
+ Our policy is not to load debug info unless we can verify that
+ it matches the primary. Just declare success at this point.
+ And don't complain to the user, since that would cause us to
+ complain on objects compiled without -g. (Some versions of
+ XCode are observed to omit a UUID entry for object linked(?)
+ without -g. Others don't appear to omit it.) */
+ if (!have_uuid)
goto success;
- }
/* mmap the dSYM file to look for DWARF debug info. If successful,
use the .macho_img and .macho_img_szB in iid. */
|
|
From: <sv...@va...> - 2009-04-27 21:07:41
|
Author: sewardj
Date: 2009-04-27 22:07:30 +0100 (Mon, 27 Apr 2009)
New Revision: 9649
Log:
Add a list of bugs reported since 3.4.1 was released. 50 new bug
reports in 60 days.
Added:
trunk/docs/internals/3_4_BUGSTATUS.txt
Modified:
trunk/docs/internals/Makefile.am
Added: trunk/docs/internals/3_4_BUGSTATUS.txt
===================================================================
--- trunk/docs/internals/3_4_BUGSTATUS.txt (rev 0)
+++ trunk/docs/internals/3_4_BUGSTATUS.txt 2009-04-27 21:07:30 UTC (rev 9649)
@@ -0,0 +1,130 @@
+
+Bugs reported after the release of 3.4.1. Not sure what happened to
+any record of bugs reported after the release of 3.4.0. Oh well.
+
+For ref:
+
+(3.4.1.RC1: 24 Feb 2009, vex r1884, valgrind r9253).
+(3.4.1: 28 Feb 2009, vex r1884, valgrind r9293).
+
+-------------------
+
+185128 Helgrind: hg_main.c:3860 (hg_handle_client_request):
+ Assertion 'found' failed.
+
+185499 testcase usability kde brainfuck
+
+185517 Wrong write detection
+
+185794 "WARNING: unhandled syscall: 285" (fallocate) on x86_64
+ in several tools
+
+185801 exp-ptrcheck: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
+
+185816 Valgrind is unable to handle debug info for files with
+ split debug info that are prelinked afterwards
+
+186238 bbToIR_AMD64: disInstr miscalculated next %rip
+
+186248 Support full AMD floating-point implementation.
+
+186507 exp-ptrcheck unhandled syscalls prctl, etc.
+
+186790 Suppression pattern used for leaks are not reported
+
+186796 Symbols with length>200 in suppression files are ignored
+
+157154 documentation (leak-resolution doc speaks about num-callers
+ def=4) + what is a loss record
+
+186963 Report mutexes humanic names
+
+187043 sched_getcpu() produces Segmentation Fault
+
+187048 mutex PTHREAD_PROCESS_SHARED attribute missinterpretation
+
+187416 support for __NR_{setregid,setreuid,setresuid} in
+ exp-ptrcheck
+
+187680 valgrind: the 'impossible' happened (probably invalid)
+
+187760 valgrind: the 'impossible' happened: VG_(arena_memalign)
+
+188038 Helgrind internal error
+
+188046 bashisms in the configure script
+
+188127 vex amd64->IR: unhandled instruction bytes: 0xF0 0xF 0xB0 0xA
+ (ancient cmpxchg stuff, probably invalid now)
+
+188161 valgrind --track-origins=yes asserts (transient trunk
+ stuff, now fixed?)
+
+188248 pthread_cleanup_push, pthread_rwlock_unlock, assertion
+ fail "!lock->heldBy"
+
+188258 javascript fragment gives different result under valgrind
+ (requires SSSE3 exns; cant easily fix?)
+
+188427 Add support for epoll_create1 (with patch)
+
+188530 Support for SIOCGSTAMPNS
+
+188560 Include valgrind.spec in the tarball
+
+188572 Valgrind on Mac should suppress setenv() mem leak
+
+188656 valgrind doesn't build on x86_64 machine (INVALID)
+
+188657 Massif: ms_main.c:1700 (update_stack_stats): Assertion
+ 'stacks_szB >= -stack_szB_delta' failed
+
+188735 Cachegrind fails to produce any output on java apps
+
+188969 thread's stack is not computed correctly
+
+188984 Data corruption for returned from function long double
+ (fp grumblings)
+
+189028 impossible happend in unlinkBlock (m_mallocfree.c:206)
+ (usual memory corruption) -- invalid
+
+189054 Valgrind fails to build because of duplicate non-local
+ asm labels
+
+189143 crash when running using wine to run vcsetup.exe under
+ valgrind
+
+189183 valgrind core dump on aix5.3 platform
+
+189232 Illegal opcode - unhandled instruction bytes: 0xCB 0x55
+ 0x8B 0xEC
+
+189361 Cache simulation slightly wrong
+
+189661 Valgrind on Mac hangs on a race-condition
+
+189737 vex amd64->IR: unhandled instruction bytes: 0xAC (lods)
+
+189762 epoll_create syscall not handled (in ptrcheck)
+
+189763 drd assertion failure: s_threadinfo[tid].is_recording
+
+190219 unhandled syscall: 328 (x86-linux, __NR_eventfd2 ?)
+
+190390 Allow to set the number of frames for helgrind conflicts
+
+190391 okular crashes helgrind
+ ==181394
+
+190429 Valgrind reports lost of errors in ld.so with x86_64
+ 2.9.90 glibc
+
+(next 2 are wine-specific)
+190660 False warnings for _strlen
+190675 Spurious error "Wrong time stamp of .PDB file"
+
+190820 No debug information on powerpc-linux
+
+(-- 27 Apr 09 --)
+
Modified: trunk/docs/internals/Makefile.am
===================================================================
--- trunk/docs/internals/Makefile.am 2009-04-27 20:04:08 UTC (rev 9648)
+++ trunk/docs/internals/Makefile.am 2009-04-27 21:07:30 UTC (rev 9649)
@@ -1,6 +1,7 @@
EXTRA_DIST = \
3_0_BUGSTATUS.txt 3_1_BUGSTATUS.txt \
3_2_BUGSTATUS.txt 3_3_BUGSTATUS.txt \
+ 3_4_BUGSTATUS.txt \
BIG_APP_NOTES.txt \
directory-structure.txt \
howto_BUILD_KDE42.txt \
|
|
From: Johan B. <jb...@gm...> - 2009-04-27 20:31:30
|
Hi all, If the readelf code is unable to find a soname for the loaded library, it puts the soname as "NONE". Anyone know why NONE was chosen over the basename of the library filename? /Johan |
|
From: <sv...@va...> - 2009-04-27 20:04:12
|
Author: sewardj
Date: 2009-04-27 21:04:08 +0100 (Mon, 27 Apr 2009)
New Revision: 9648
Log:
Merge r9647 (comments on _debug_{svma,bias} fields in struct
_DebugInfo) from trunk.
Modified:
branches/DARWIN/coregrind/m_debuginfo/priv_storage.h
Modified: branches/DARWIN/coregrind/m_debuginfo/priv_storage.h
===================================================================
--- branches/DARWIN/coregrind/m_debuginfo/priv_storage.h 2009-04-27 19:59:10 UTC (rev 9647)
+++ branches/DARWIN/coregrind/m_debuginfo/priv_storage.h 2009-04-27 20:04:08 UTC (rev 9648)
@@ -333,6 +333,8 @@
Certainly text_ is mandatory on all platforms; not sure about
the rest though.
+ --------------------------------------------------------
+
Comment_on_IMPORTANT_CFSI_REPRESENTATIONAL_INVARIANTS: we require that
either (rx_map_size == 0 && cfsi == NULL) (the degenerate case)
@@ -370,6 +372,89 @@
(2) follows from (4) and (3). It is ensured by canonicaliseCFI.
(3) is ensured by ML_(addDiCfSI).
(4) is ensured by canonicaliseCFI.
+
+ --------------------------------------------------------
+
+ Comment_on_DEBUG_SVMA_and_DEBUG_BIAS_fields:
+
+ The _debug_{svma,bias} fields were added as part of a fix to
+ #185816. The problem encompassed in that bug report was that it
+ wasn't correct to use apply the bias values deduced for a
+ primary object to its associated debuginfo object, because the
+ debuginfo object (or the primary) could have been prelinked to a
+ different SVMA. Hence debuginfo and primary objects need to
+ have their own biases.
+
+ ------ JRS: (referring to r9329): ------
+ Let me see if I understand the workings correctly. Initially
+ the _debug_ values are set to the same values as the "normal"
+ ones, as there's a bunch of bits of code like this (in
+ readelf.c)
+
+ di->text_svma = svma;
+ ...
+ di->text_bias = rx_bias;
+ di->text_debug_svma = svma;
+ di->text_debug_bias = rx_bias;
+
+ If a debuginfo object subsequently shows up then the
+ _debug_svma/bias are set for the debuginfo object. Result is
+ that if there's no debuginfo object then the values are the same
+ as the primary-object values, and if there is a debuginfo object
+ then they will (or at least may) be different.
+
+ Then when we need to actually bias something, we'll have to
+ decide whether to use the primary bias or the debuginfo bias.
+ And the strategy is to use the primary bias for ELF symbols but
+ the debuginfo bias for anything pulled out of Dwarf.
+
+ ------ THH: ------
+ Correct - the debug_svma and bias values apply to any address
+ read from the debug data regardless of where that debug data is
+ stored and the other values are used for addresses from other
+ places (primarily the symbol table).
+
+ ------ JRS: ------
+ Ok; so this was my only area of concern. Are there any
+ corner-case scenarios where this wouldn't be right? It sounds
+ like we're assuming the ELF symbols come from the primary object
+ and, if there is a debug object, then all the Dwarf comes from
+ there. But what if (eg) both symbols and Dwarf come from the
+ debug object? Is that even possible or allowable?
+
+ ------ THH: ------
+ You may have a point...
+
+ The current logic is to try and take any one set of data from
+ either the base object or the debug object. There are four sets
+ of data we consider:
+
+ - Symbol Table
+ - Stabs
+ - DWARF1
+ - DWARF2
+
+ If we see the primary section for a given set in the base object
+ then we ignore all sections relating to that set in the debug
+ object.
+
+ Now in principle if we saw a secondary section (like debug_line
+ say) in the base object, but not the main section (debug_info in
+ this case) then we would take debug_info from the debug object
+ but would use the debug_line from the base object unless we saw
+ a replacement copy in the debug object. That's probably unlikely
+ however.
+
+ A bigger issue might be, as you say, the symbol table as we will
+ pick that up from the debug object if it isn't in the base. The
+ dynamic symbol table will always have to be in the base object
+ though so we will have to be careful when processing symbols to
+ know which table we are reading in that case.
+
+ What we probably need to do is tell read_elf_symtab which object
+ the symbols it is being asked to read came from.
+
+ (A followup patch to deal with this was committed in r9469).
*/
/* .text */
Bool text_present;
|
|
From: <sv...@va...> - 2009-04-27 19:59:15
|
Author: sewardj
Date: 2009-04-27 20:59:10 +0100 (Mon, 27 Apr 2009)
New Revision: 9647
Log:
Comment-only change: add comments pertaining to revs 9329 and 9469,
which were a fix for #185816. These commits added _debug_{svma,bias}
fields to struct _DebugInfo.
Modified:
trunk/coregrind/m_debuginfo/priv_storage.h
Modified: trunk/coregrind/m_debuginfo/priv_storage.h
===================================================================
--- trunk/coregrind/m_debuginfo/priv_storage.h 2009-04-27 08:04:57 UTC (rev 9646)
+++ trunk/coregrind/m_debuginfo/priv_storage.h 2009-04-27 19:59:10 UTC (rev 9647)
@@ -333,6 +333,8 @@
Certainly text_ is mandatory on all platforms; not sure about
the rest though.
+ --------------------------------------------------------
+
Comment_on_IMPORTANT_CFSI_REPRESENTATIONAL_INVARIANTS: we require that
either (rx_map_size == 0 && cfsi == NULL) (the degenerate case)
@@ -370,6 +372,89 @@
(2) follows from (4) and (3). It is ensured by canonicaliseCFI.
(3) is ensured by ML_(addDiCfSI).
(4) is ensured by canonicaliseCFI.
+
+ --------------------------------------------------------
+
+ Comment_on_DEBUG_SVMA_and_DEBUG_BIAS_fields:
+
+ The _debug_{svma,bias} fields were added as part of a fix to
+ #185816. The problem encompassed in that bug report was that it
+ wasn't correct to use apply the bias values deduced for a
+ primary object to its associated debuginfo object, because the
+ debuginfo object (or the primary) could have been prelinked to a
+ different SVMA. Hence debuginfo and primary objects need to
+ have their own biases.
+
+ ------ JRS: (referring to r9329): ------
+ Let me see if I understand the workings correctly. Initially
+ the _debug_ values are set to the same values as the "normal"
+ ones, as there's a bunch of bits of code like this (in
+ readelf.c)
+
+ di->text_svma = svma;
+ ...
+ di->text_bias = rx_bias;
+ di->text_debug_svma = svma;
+ di->text_debug_bias = rx_bias;
+
+ If a debuginfo object subsequently shows up then the
+ _debug_svma/bias are set for the debuginfo object. Result is
+ that if there's no debuginfo object then the values are the same
+ as the primary-object values, and if there is a debuginfo object
+ then they will (or at least may) be different.
+
+ Then when we need to actually bias something, we'll have to
+ decide whether to use the primary bias or the debuginfo bias.
+ And the strategy is to use the primary bias for ELF symbols but
+ the debuginfo bias for anything pulled out of Dwarf.
+
+ ------ THH: ------
+ Correct - the debug_svma and bias values apply to any address
+ read from the debug data regardless of where that debug data is
+ stored and the other values are used for addresses from other
+ places (primarily the symbol table).
+
+ ------ JRS: ------
+ Ok; so this was my only area of concern. Are there any
+ corner-case scenarios where this wouldn't be right? It sounds
+ like we're assuming the ELF symbols come from the primary object
+ and, if there is a debug object, then all the Dwarf comes from
+ there. But what if (eg) both symbols and Dwarf come from the
+ debug object? Is that even possible or allowable?
+
+ ------ THH: ------
+ You may have a point...
+
+ The current logic is to try and take any one set of data from
+ either the base object or the debug object. There are four sets
+ of data we consider:
+
+ - Symbol Table
+ - Stabs
+ - DWARF1
+ - DWARF2
+
+ If we see the primary section for a given set in the base object
+ then we ignore all sections relating to that set in the debug
+ object.
+
+ Now in principle if we saw a secondary section (like debug_line
+ say) in the base object, but not the main section (debug_info in
+ this case) then we would take debug_info from the debug object
+ but would use the debug_line from the base object unless we saw
+ a replacement copy in the debug object. That's probably unlikely
+ however.
+
+ A bigger issue might be, as you say, the symbol table as we will
+ pick that up from the debug object if it isn't in the base. The
+ dynamic symbol table will always have to be in the base object
+ though so we will have to be careful when processing symbols to
+ know which table we are reading in that case.
+
+ What we probably need to do is tell read_elf_symtab which object
+ the symbols it is being asked to read came from.
+
+ (A followup patch to deal with this was committed in r9469).
*/
/* .text */
Bool text_present;
|
|
From: Nicholas N. <n.n...@gm...> - 2009-04-27 17:33:25
|
Nightly build on ocean32 ( Ubuntu 8.10, Intel x86-64 (32-bit only) ) started at 2009-04-28 03:00:01 EST
Results unchanged from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 446 tests, 7 stderr failures, 2 stdout failures, 0 post failures ==
memcheck/tests/linux/stack_switch (stderr)
memcheck/tests/origin1-yes (stderr)
memcheck/tests/origin5-bz2 (stderr)
none/tests/linux/mremap2 (stdout)
none/tests/shell (stdout)
none/tests/shell (stderr)
none/tests/shell_valid1 (stderr)
none/tests/shell_valid2 (stderr)
none/tests/shell_valid3 (stderr)
=================================================
./valgrind/memcheck/tests/linux/stack_switch.stderr.diff
=================================================
--- stack_switch.stderr.exp 2009-04-28 03:19:13.000000000 +1000
+++ stack_switch.stderr.out 2009-04-28 03:31:09.000000000 +1000
@@ -0,0 +1,2 @@
+Syscall param clone(child_tidptr) contains uninitialised byte(s)
+ ...
=================================================
./valgrind/memcheck/tests/origin1-yes.stderr.diff
=================================================
--- origin1-yes.stderr.exp 2009-04-28 03:19:25.000000000 +1000
+++ origin1-yes.stderr.out 2009-04-28 03:31:26.000000000 +1000
@@ -47,7 +47,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin1-yes.c:93)
Uninitialised value was created
- at 0x........: brk (in /...libc...)
+ at 0x........: ??? (in /lib32/ld-2.9.so)
by 0x........: sbrk (in /...libc...)
by 0x........: main (origin1-yes.c:90)
=================================================
./valgrind/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2009-04-28 03:19:24.000000000 +1000
+++ origin5-bz2.stderr.out 2009-04-28 03:31:30.000000000 +1000
@@ -11,7 +11,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -19,7 +19,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -27,7 +27,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -38,7 +38,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -49,7 +49,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2854)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -60,7 +60,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2858)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -71,7 +71,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -82,7 +82,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -93,7 +93,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -104,7 +104,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: fallbackSort (origin5-bz2.c:2275)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
=================================================
./valgrind/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2009-04-28 03:19:25.000000000 +1000
+++ origin5-bz2.stderr.out 2009-04-28 03:31:30.000000000 +1000
@@ -28,7 +28,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+ at 0x........: mainSort (origin5-bz2.c:2820)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -38,7 +39,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+ at 0x........: mainSort (origin5-bz2.c:2823)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -48,7 +50,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2855)
+ at 0x........: mainSort (origin5-bz2.c:2854)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -58,7 +61,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2859)
+ at 0x........: mainSort (origin5-bz2.c:2858)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -68,7 +72,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+ at 0x........: mainSort (origin5-bz2.c:2963)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -78,7 +83,8 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 4
- at 0x........: BZ2_blockSort (origin5-bz2.c:2964)
+ at 0x........: mainSort (origin5-bz2.c:2964)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
=================================================
./valgrind/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2009-04-28 03:19:24.000000000 +1000
+++ origin5-bz2.stderr.out 2009-04-28 03:31:30.000000000 +1000
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: handle_compress (origin5-bz2.c:4686)
@@ -9,85 +9,91 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
+Use of uninitialised value of size 4
at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2820)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2820)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2823)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2823)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2854)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2854)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2858)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2858)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
by 0x........: handle_compress (origin5-bz2.c:4753)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 8
- at 0x........: BZ2_blockSort (origin5-bz2.c:2963)
+Use of uninitialised value of size 4
+ at 0x........: mainSort (origin5-bz2.c:2963)
+ by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
<truncated beyond 100 lines>
=================================================
./valgrind/none/tests/linux/mremap2.stdout.diff
=================================================
--- mremap2.stdout.exp 2009-04-28 03:21:15.000000000 +1000
+++ mremap2.stdout.out 2009-04-28 03:32:37.000000000 +1000
@@ -27,38 +27,38 @@
..................................................
..................................................
-maymv 0 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX
+maymv 0 fixed 0 newsz 21 dstpo 0 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 0 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX
+maymv 0 fixed 0 newsz 21 dstpo 1 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 0 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX
+maymv 0 fixed 0 newsz 29 dstpo 0 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 0 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX
+maymv 0 fixed 0 newsz 29 dstpo 1 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 0 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+maymv 0 fixed 0 newsz 30 dstpo 0 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 0 fixed 0 newsz 30 dstpo 1 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+maymv 0 fixed 0 newsz 30 dstpo 1 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
@@ -173,40 +173,40 @@
..................................................
..................................................
-maymv 1 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX
+maymv 1 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== other)
+XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 1 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX
+maymv 1 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== other)
+XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 1 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX
+maymv 1 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== other)
+XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.....................
..................................................
-maymv 1 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX
+maymv 1 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== other)
+XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.....................
..................................................
-maymv 1 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+maymv 1 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== other)
+XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX....................
..................................................
<truncated beyond 100 lines>
=================================================
./valgrind/none/tests/linux/mremap2.stdout.diff-glibc28-amd64
=================================================
--- mremap2.stdout.exp-glibc28-amd64 2009-04-28 03:21:15.000000000 +1000
+++ mremap2.stdout.out 2009-04-28 03:32:37.000000000 +1000
@@ -188,37 +188,37 @@
maymv 1 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== other)
XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.....................
..................................................
maymv 1 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== other)
XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.....................
..................................................
maymv 1 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== other)
XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX....................
..................................................
maymv 1 fixed 0 newsz 30 dstpo 1 dst 0x........ -> 0x........ (== other)
XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX....................
..................................................
maymv 1 fixed 0 newsz 31 dstpo 0 dst 0x........ -> 0x........ (== other)
XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX...................
..................................................
maymv 1 fixed 0 newsz 31 dstpo 1 dst 0x........ -> 0x........ (== other)
XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX...................
..................................................
=================================================
./valgrind/none/tests/linux/mremap2.stdout.diff2
=================================================
--- mremap2.stdout.exp2 2009-04-28 03:21:15.000000000 +1000
+++ mremap2.stdout.out 2009-04-28 03:32:37.000000000 +1000
@@ -27,38 +27,38 @@
..................................................
..................................................
-maymv 0 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX
+maymv 0 fixed 0 newsz 21 dstpo 0 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 0 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX
+maymv 0 fixed 0 newsz 21 dstpo 1 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 0 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX
+maymv 0 fixed 0 newsz 29 dstpo 0 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 0 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX
+maymv 0 fixed 0 newsz 29 dstpo 1 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 0 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+maymv 0 fixed 0 newsz 30 dstpo 0 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 0 fixed 0 newsz 30 dstpo 1 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+maymv 0 fixed 0 newsz 30 dstpo 1 dst 0x........ -> error 12
+XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
@@ -173,52 +173,52 @@
..................................................
..................................................
-maymv 1 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX
+maymv 1 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== other)
+XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 1 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX
+maymv 1 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== other)
+XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
..................................................
..................................................
-maymv 1 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX
+maymv 1 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== other)
+XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.....................
..................................................
-maymv 1 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX
+maymv 1 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== other)
+XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.....................
..................................................
-maymv 1 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== src)
-XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+maymv 1 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== other)
+XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX....................
..................................................
<truncated beyond 100 lines>
=================================================
./valgrind/none/tests/shell.stderr.diff
=================================================
--- shell.stderr.exp 2009-04-28 03:21:26.000000000 +1000
+++ shell.stderr.out 2009-04-28 03:32:54.000000000 +1000
@@ -1,8 +1 @@
-./shell: ./x86/: is a directory
-./shell: ./shell.vgtest: Permission denied
-execve(0x........(./shell_badinterp), 0x........, 0x........) failed, errno 2
-EXEC FAILED: I can't recover from execve() failing, so I'm dying.
-Add more stringent tests in PRE(sys_execve), or work out how to recover.
-./shell: ./shell_binaryfile: cannot execute binary file
-./shell: ./shell_nosuchfile: No such file or directory
-./shell: shell_nosuchfile: command not found
+valgrind: failed to start tool 'none' for platform 'amd64-linux': No such file or directory
=================================================
./valgrind/none/tests/shell.stderr.diff-dash
=================================================
--- shell.stderr.exp-dash 2009-04-28 03:21:26.000000000 +1000
+++ shell.stderr.out 2009-04-28 03:32:54.000000000 +1000
@@ -1,8 +1 @@
-./shell: 10: ./x86/: Permission denied
-./shell: 13: ./shell.vgtest: Permission denied
-execve(0x........(./shell_badinterp), 0x........, 0x........) failed, errno 2
-EXEC FAILED: I can't recover from execve() failing, so I'm dying.
-Add more stringent tests in PRE(sys_execve), or work out how to recover.
-./shell_binaryfile: 4: Syntax error: ")" unexpected
-./shell: 22: ./shell_nosuchfile: not found
-./shell: 25: shell_nosuchfile: not found
+valgrind: failed to start tool 'none' for platform 'amd64-linux': No such file or directory
=================================================
./valgrind/none/tests/shell.stdout.diff
=================================================
--- shell.stdout.exp 2009-04-28 03:21:26.000000000 +1000
+++ shell.stdout.out 2009-04-28 03:32:54.000000000 +1000
@@ -1,10 +0,0 @@
-Execute a directory
-Execute a non-executable file
-Execute a script with a bad interpreter name
-Execute a binary file
-Execute a non-existent file
-Execute a non-existent file (2)
-Execute a valid script with a #! line
-Execute a valid script without a #! line
-Execute a valid script with #! but no interpname
-Execute a zero-length file
=================================================
./valgrind/none/tests/shell_valid1.stderr.diff
=================================================
--- shell_valid1.stderr.exp 2009-04-28 03:21:26.000000000 +1000
+++ shell_valid1.stderr.out 2009-04-28 03:32:54.000000000 +1000
@@ -0,0 +1 @@
+valgrind: failed to start tool 'none' for platform 'amd64-linux': No such file or directory
=================================================
./valgrind/none/tests/shell_valid2.stderr.diff
=================================================
--- shell_valid2.stderr.exp 2009-04-28 03:21:26.000000000 +1000
+++ shell_valid2.stderr.out 2009-04-28 03:32:54.000000000 +1000
@@ -0,0 +1,2 @@
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_valid2: bad interpreter (/bin/sh): VG_(strerror): unknown error
=================================================
./valgrind/none/tests/shell_valid3.stderr.diff
=================================================
--- shell_valid3.stderr.exp 2009-04-28 03:21:26.000000000 +1000
+++ shell_valid3.stderr.out 2009-04-28 03:32:54.000000000 +1000
@@ -0,0 +1,2 @@
+valgrind: wrong ELF executable class (eg. 32-bit instead of 64-bit)
+valgrind: ./shell_valid3: bad interpreter (/bin/sh): VG_(strerror): unknown error
|
|
From: Nicholas N. <n.n...@gm...> - 2009-04-27 16:40:09
|
Nightly build on ocean ( Ubuntu 8.10, Intel x86-64 ) started at 2009-04-28 02:00:01 EST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 483 tests, 0 stderr failures, 1 stdout failure, 0 post failures == none/tests/linux/mremap2 (stdout) ================================================= ./valgrind/none/tests/linux/mremap2.stdout.diff ================================================= --- mremap2.stdout.exp 2009-04-28 02:22:51.000000000 +1000 +++ mremap2.stdout.out 2009-04-28 02:39:14.000000000 +1000 @@ -27,38 +27,38 @@ .................................................. .................................................. -maymv 0 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX +maymv 0 fixed 0 newsz 21 dstpo 0 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 0 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX +maymv 0 fixed 0 newsz 21 dstpo 1 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 0 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX +maymv 0 fixed 0 newsz 29 dstpo 0 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 0 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX +maymv 0 fixed 0 newsz 29 dstpo 1 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 0 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +maymv 0 fixed 0 newsz 30 dstpo 0 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 0 fixed 0 newsz 30 dstpo 1 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +maymv 0 fixed 0 newsz 30 dstpo 1 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. @@ -173,40 +173,40 @@ .................................................. .................................................. -maymv 1 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX +maymv 1 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== other) +XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 1 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX +maymv 1 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== other) +XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 1 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX +maymv 1 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== other) +XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXX..................... .................................................. -maymv 1 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX +maymv 1 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== other) +XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXX..................... .................................................. -maymv 1 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +maymv 1 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== other) +XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.................... .................................................. <truncated beyond 100 lines> ================================================= ./valgrind/none/tests/linux/mremap2.stdout.diff-glibc28-amd64 ================================================= --- mremap2.stdout.exp-glibc28-amd64 2009-04-28 02:22:51.000000000 +1000 +++ mremap2.stdout.out 2009-04-28 02:39:14.000000000 +1000 @@ -188,37 +188,37 @@ maymv 1 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== other) XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXX..................... .................................................. maymv 1 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== other) XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXX..................... .................................................. maymv 1 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== other) XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.................... .................................................. maymv 1 fixed 0 newsz 30 dstpo 1 dst 0x........ -> 0x........ (== other) XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.................... .................................................. maymv 1 fixed 0 newsz 31 dstpo 0 dst 0x........ -> 0x........ (== other) XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX................... .................................................. maymv 1 fixed 0 newsz 31 dstpo 1 dst 0x........ -> 0x........ (== other) XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX................... .................................................. ================================================= ./valgrind/none/tests/linux/mremap2.stdout.diff2 ================================================= --- mremap2.stdout.exp2 2009-04-28 02:22:51.000000000 +1000 +++ mremap2.stdout.out 2009-04-28 02:39:14.000000000 +1000 @@ -27,38 +27,38 @@ .................................................. .................................................. -maymv 0 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX +maymv 0 fixed 0 newsz 21 dstpo 0 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 0 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX +maymv 0 fixed 0 newsz 21 dstpo 1 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 0 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX +maymv 0 fixed 0 newsz 29 dstpo 0 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 0 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX +maymv 0 fixed 0 newsz 29 dstpo 1 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 0 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +maymv 0 fixed 0 newsz 30 dstpo 0 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 0 fixed 0 newsz 30 dstpo 1 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +maymv 0 fixed 0 newsz 30 dstpo 1 dst 0x........ -> error 12 +XXXXXXXXX.XXXXXXXXXXXXXXXXXXXX..........XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. @@ -173,52 +173,52 @@ .................................................. .................................................. -maymv 1 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX +maymv 1 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== other) +XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 1 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX.........XXXXXXXXXX +maymv 1 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== other) +XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX .................................................. .................................................. -maymv 1 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX +maymv 1 fixed 0 newsz 29 dstpo 0 dst 0x........ -> 0x........ (== other) +XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXX..................... .................................................. -maymv 1 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXX +maymv 1 fixed 0 newsz 29 dstpo 1 dst 0x........ -> 0x........ (== other) +XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXX..................... .................................................. -maymv 1 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== src) -XXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +maymv 1 fixed 0 newsz 30 dstpo 0 dst 0x........ -> 0x........ (== other) +XXXXXXXXX...............................XXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -.................................................. +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.................... .................................................. <truncated beyond 100 lines> |
|
From: <sv...@va...> - 2009-04-27 08:05:04
|
Author: bart
Date: 2009-04-27 09:04:57 +0100 (Mon, 27 Apr 2009)
New Revision: 9646
Log:
Only run the nightly build if there was a commit during the last 24 hours.
Modified:
trunk/nightly/bin/nightly
Modified: trunk/nightly/bin/nightly
===================================================================
--- trunk/nightly/bin/nightly 2009-04-27 04:59:02 UTC (rev 9645)
+++ trunk/nightly/bin/nightly 2009-04-27 08:04:57 UTC (rev 9646)
@@ -6,9 +6,14 @@
#----------------------------------------------------------------------------
#----------------------------------------------------------------------------
-# Helper function
+# Helper functions
#----------------------------------------------------------------------------
+# Returns the revision number of the source files with date $1.
+get_svn_revision() {
+ svn info -r "{$1}" "${valgrind_svn_repo}" | sed -n 's/^Revision: //p'
+}
+
runcmd () {
logfile=$1
str=$2
@@ -39,6 +44,9 @@
#----------------------------------------------------------------------------
# Startup
#----------------------------------------------------------------------------
+
+valgrind_svn_repo="svn://svn.valgrind.org/valgrind/trunk"
+
# Must have exactly two arguments
if [ $# -ne 2 ] ; then
echo "usage: $0 /path/to/valgrind/nightly <tag>"
@@ -57,6 +65,10 @@
cd $ABT_TOP
+# Clean up output files produced by a previous run.
+rm -rf diffs diff.short final Inst new.short new.verbose old.short old.verbose
+rm -rf sendmail.log unchanged.log valgrind
+
# Setup any relevant environment variables from conf/<tag>.conf.
. conf/$ABT_MACHINE.conf
if [ "${ABT_JOBS}" = "" ]; then
@@ -74,12 +86,20 @@
# Check out, build, test
#----------------------------------------------------------------------------
+svn_old_rev="`get_svn_revision ${svn_old_date}`"
+svn_new_rev="`get_svn_revision ${svn_new_date}`"
+if [ "${svn_old_rev}" = "${svn_new_rev}" ]; then
+ echo "Both {$svn_old_date} and {$svn_new_date} correspond to r${svn_new_rev}"\
+ "-- skipping nightly build." >unchanged.log
+ exit 0
+fi
+
# Do everything twice -- once for the 24 hours old Valgrind, and once
# for the current one.
for logfile in old new ; do
- # Remove the old valgrind/ and vex/ directories
- rm -rf valgrind vex
+ # Remove the old valgrind directory.
+ rm -rf valgrind
# Remove old short and verbose log files, and start the new ones
for ext in short verbose ; do
@@ -98,7 +118,7 @@
# Check out, build, run tests
runcmd $logfile \
"Checking out valgrind source tree" \
- "svn co svn://svn.valgrind.org/valgrind/trunk -r {$svn_date} valgrind" && \
+ "svn co ${valgrind_svn_repo} -r {$svn_date} valgrind" && \
\
runcmd $logfile \
"Configuring valgrind " \
@@ -170,7 +190,6 @@
# Gather up the diffs (at most the first 100 lines for each one) into a
# single file.
MAX_LINES=100
-rm -f diffs
diff_files=`find . -name '*.diff*' | sort`
if [ z"$diff_files" = z ] ; then
echo "Congratulations, all tests passed!" >> diffs
|
|
From: Bart V. A. <bar...@gm...> - 2009-04-27 07:55:14
|
Nightly build on georgia-tech-cellbuzz-native ( cellbuzz, ppc64, Fedora 7, native ) started at 2009-04-27 02:21:44 EDT Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 407 tests, 37 stderr failures, 12 stdout failures, 0 post failures == drd/tests/pth_create_chain (stderr) exp-ptrcheck/tests/bad_percentify (stdout) exp-ptrcheck/tests/bad_percentify (stderr) exp-ptrcheck/tests/base (stderr) exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/fp (stderr) exp-ptrcheck/tests/globalerr (stderr) exp-ptrcheck/tests/hackedbz2 (stdout) exp-ptrcheck/tests/hackedbz2 (stderr) exp-ptrcheck/tests/hp_bounds (stderr) exp-ptrcheck/tests/hp_dangle (stderr) exp-ptrcheck/tests/justify (stderr) exp-ptrcheck/tests/partial_bad (stderr) exp-ptrcheck/tests/partial_good (stderr) exp-ptrcheck/tests/preen_invars (stdout) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) exp-ptrcheck/tests/realloc (stderr) exp-ptrcheck/tests/stackerr (stderr) exp-ptrcheck/tests/strcpy (stderr) exp-ptrcheck/tests/supp (stderr) exp-ptrcheck/tests/tricky (stderr) exp-ptrcheck/tests/unaligned (stderr) exp-ptrcheck/tests/zero (stderr) helgrind/tests/hg05_race2 (stderr) memcheck/tests/deep_templates (stdout) memcheck/tests/leak-cases-full (stderr) memcheck/tests/leak-cases-summary (stderr) memcheck/tests/leak-cycle (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/varinfo1 (stderr) memcheck/tests/varinfo2 (stderr) memcheck/tests/varinfo3 (stderr) memcheck/tests/varinfo4 (stderr) memcheck/tests/varinfo5 (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/wrap8 (stderr) none/tests/linux/mremap (stderr) none/tests/linux/mremap2 (stdout) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/jm-vmx (stdout) none/tests/ppc32/round (stdout) none/tests/ppc32/test_gx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/jm-vmx (stdout) none/tests/ppc64/round (stdout) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 407 tests, 36 stderr failures, 9 stdout failures, 0 post failures == exp-ptrcheck/tests/bad_percentify (stderr) exp-ptrcheck/tests/base (stderr) exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/fp (stderr) exp-ptrcheck/tests/globalerr (stderr) exp-ptrcheck/tests/hackedbz2 (stderr) exp-ptrcheck/tests/hp_bounds (stderr) exp-ptrcheck/tests/hp_dangle (stderr) exp-ptrcheck/tests/justify (stderr) exp-ptrcheck/tests/partial_bad (stderr) exp-ptrcheck/tests/partial_good (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) exp-ptrcheck/tests/realloc (stderr) exp-ptrcheck/tests/stackerr (stderr) exp-ptrcheck/tests/strcpy (stderr) exp-ptrcheck/tests/supp (stderr) exp-ptrcheck/tests/tricky (stderr) exp-ptrcheck/tests/unaligned (stderr) exp-ptrcheck/tests/zero (stderr) helgrind/tests/hg05_race2 (stderr) memcheck/tests/deep_templates (stdout) memcheck/tests/leak-cases-full (stderr) memcheck/tests/leak-cases-summary (stderr) memcheck/tests/leak-cycle (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/varinfo1 (stderr) memcheck/tests/varinfo2 (stderr) memcheck/tests/varinfo3 (stderr) memcheck/tests/varinfo4 (stderr) memcheck/tests/varinfo5 (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/wrap8 (stderr) none/tests/linux/mremap (stderr) none/tests/linux/mremap2 (stdout) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/jm-vmx (stdout) none/tests/ppc32/round (stdout) none/tests/ppc32/test_gx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/jm-vmx (stdout) none/tests/ppc64/round (stdout) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Mon Apr 27 03:09:03 2009 --- new.short Mon Apr 27 03:54:59 2009 *************** *** 8,10 **** ! == 407 tests, 36 stderr failures, 9 stdout failures, 0 post failures == exp-ptrcheck/tests/bad_percentify (stderr) --- 8,12 ---- ! == 407 tests, 37 stderr failures, 12 stdout failures, 0 post failures == ! drd/tests/pth_create_chain (stderr) ! exp-ptrcheck/tests/bad_percentify (stdout) exp-ptrcheck/tests/bad_percentify (stderr) *************** *** 14,15 **** --- 16,18 ---- exp-ptrcheck/tests/globalerr (stderr) + exp-ptrcheck/tests/hackedbz2 (stdout) exp-ptrcheck/tests/hackedbz2 (stderr) *************** *** 20,21 **** --- 23,25 ---- exp-ptrcheck/tests/partial_good (stderr) + exp-ptrcheck/tests/preen_invars (stdout) exp-ptrcheck/tests/preen_invars (stderr) |
|
From: <sv...@va...> - 2009-04-27 04:59:10
|
Author: njn
Date: 2009-04-27 05:59:02 +0100 (Mon, 27 Apr 2009)
New Revision: 9645
Log:
Some Darwin tweaks, including removing --trace-unknown-syscalls.
Modified:
branches/DARWIN/coregrind/m_initimg/initimg-darwin.c
branches/DARWIN/coregrind/m_mach/mach_basics.c
branches/DARWIN/coregrind/m_main.c
branches/DARWIN/coregrind/m_options.c
branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c
branches/DARWIN/coregrind/pub_core_options.h
Modified: branches/DARWIN/coregrind/m_initimg/initimg-darwin.c
===================================================================
--- branches/DARWIN/coregrind/m_initimg/initimg-darwin.c 2009-04-27 04:35:28 UTC (rev 9644)
+++ branches/DARWIN/coregrind/m_initimg/initimg-darwin.c 2009-04-27 04:59:02 UTC (rev 9645)
@@ -78,7 +78,6 @@
/* Get hold of a file descriptor which refers to the client
executable. This is needed for attaching to GDB. */
- // GrP fixme ...which doesn't work anyway
res = VG_(open)(exe_name, VKI_O_RDONLY, VKI_S_IRUSR);
if (!sr_isError(res))
VG_(cl_exec_fd) = sr_Res(res);
Modified: branches/DARWIN/coregrind/m_mach/mach_basics.c
===================================================================
--- branches/DARWIN/coregrind/m_mach/mach_basics.c 2009-04-27 04:35:28 UTC (rev 9644)
+++ branches/DARWIN/coregrind/m_mach/mach_basics.c 2009-04-27 04:59:02 UTC (rev 9645)
@@ -46,13 +46,6 @@
mach_port_name_t mach_task_self_ = 0;
-// DDD: doesn't get used...
-//mach_port_name_t mach_host_self(void)
-//{
-// return host_self_trap();
-//}
-
-
mach_port_name_t mach_thread_self(void)
{
return thread_self_trap();
@@ -87,7 +80,7 @@
reply = 0;
mach_task_self_ = task_self_trap();
- // GrP fixme host_page_size(mach_host_self(), &vm_page_size);
+ // GrP fixme host_page_size(host_self_trap(), &vm_page_size);
vm_page_size = 4096;
}
Modified: branches/DARWIN/coregrind/m_main.c
===================================================================
--- branches/DARWIN/coregrind/m_main.c 2009-04-27 04:35:28 UTC (rev 9644)
+++ branches/DARWIN/coregrind/m_main.c 2009-04-27 04:59:02 UTC (rev 9645)
@@ -416,8 +416,6 @@
else if VG_BOOL_CLO(arg, "--trace-redir", VG_(clo_trace_redir)) {}
else if VG_BOOL_CLO(arg, "--trace-syscalls", VG_(clo_trace_syscalls)) {}
- else if VG_BOOL_CLO(arg, "--trace-unknown-syscalls",
- VG_(clo_trace_unknown_syscalls)) {}
else if VG_BOOL_CLO(arg, "--wait-for-gdb", VG_(clo_wait_for_gdb)) {}
else if VG_STR_CLO (arg, "--db-command", VG_(clo_db_command)) {}
else if VG_STR_CLO (arg, "--sim-hints", VG_(clo_sim_hints)) {}
Modified: branches/DARWIN/coregrind/m_options.c
===================================================================
--- branches/DARWIN/coregrind/m_options.c 2009-04-27 04:35:28 UTC (rev 9644)
+++ branches/DARWIN/coregrind/m_options.c 2009-04-27 04:59:02 UTC (rev 9645)
@@ -68,7 +68,6 @@
UChar VG_(clo_profile_flags) = 0; // 00000000b
Int VG_(clo_trace_notbelow) = 999999999;
Bool VG_(clo_trace_syscalls) = False;
-Bool VG_(clo_trace_unknown_syscalls) = True; // GrP
Bool VG_(clo_trace_signals) = False;
Bool VG_(clo_trace_symtab) = False;
HChar* VG_(clo_trace_symtab_patt) = "*";
Modified: branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c
===================================================================
--- branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c 2009-04-27 04:35:28 UTC (rev 9644)
+++ branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c 2009-04-27 04:59:02 UTC (rev 9645)
@@ -1120,9 +1120,7 @@
default:
PRINT("sys_fcntl ( %ld, %ld [??] )", ARG1, ARG2);
- if (VG_(clo_trace_unknown_syscalls)) {
- VG_(printf)("UNKNOWN fcntl %ld!", ARG2);
- }
+ VG_(printf)("UNKNOWN fcntl %ld!", ARG2);
break;
}
}
@@ -1590,7 +1588,7 @@
// JRS: arguments are identical to sigprocmask
// (how, sigset_t*, sigset_t*). Perhaps behave identically?
static Bool warned;
- if (!warned && VG_(clo_trace_unknown_syscalls)) {
+ if (!warned) {
VG_(printf)("UNKNOWN __pthread_sigmask is unsupported. "
"This warning will not be repeated.\n");
warned = True;
Modified: branches/DARWIN/coregrind/pub_core_options.h
===================================================================
--- branches/DARWIN/coregrind/pub_core_options.h 2009-04-27 04:35:28 UTC (rev 9644)
+++ branches/DARWIN/coregrind/pub_core_options.h 2009-04-27 04:59:02 UTC (rev 9645)
@@ -112,8 +112,6 @@
extern Int VG_(clo_trace_notbelow);
/* DEBUG: print system calls? default: NO */
extern Bool VG_(clo_trace_syscalls);
-/* DEBUG: print unknown system calls? default: NO */ // DDD: undocumented
-extern Bool VG_(clo_trace_unknown_syscalls);
/* DEBUG: print signal details? default: NO */
extern Bool VG_(clo_trace_signals);
/* DEBUG: print symtab details? default: NO */
|
|
From: <sv...@va...> - 2009-04-27 04:35:41
|
Author: njn
Date: 2009-04-27 05:35:28 +0100 (Mon, 27 Apr 2009)
New Revision: 9644
Log:
Tweak some comments.
Modified:
branches/DARWIN/coregrind/m_libcfile.c
branches/DARWIN/coregrind/pub_core_libcfile.h
branches/DARWIN/include/pub_tool_basics.h
Modified: branches/DARWIN/coregrind/m_libcfile.c
===================================================================
--- branches/DARWIN/coregrind/m_libcfile.c 2009-04-27 03:27:31 UTC (rev 9643)
+++ branches/DARWIN/coregrind/m_libcfile.c 2009-04-27 04:35:28 UTC (rev 9644)
@@ -582,9 +582,10 @@
return 0;
}
-/* Note this moves (or at least, is believed to move) the file pointer
+/* DDD: Note this moves (or at least, is believed to move) the file pointer
on Linux and AIX5 but doesn't on Darwin. This inconsistency should
- be fixed. */
+ be fixed. (In other words, why isn't the Linux/AIX5 version implemented in
+ terms of pread()?) */
SysRes VG_(pread) ( Int fd, void* buf, Int count, OffT offset )
{
SysRes res;
Modified: branches/DARWIN/coregrind/pub_core_libcfile.h
===================================================================
--- branches/DARWIN/coregrind/pub_core_libcfile.h 2009-04-27 03:27:31 UTC (rev 9643)
+++ branches/DARWIN/coregrind/pub_core_libcfile.h 2009-04-27 04:35:28 UTC (rev 9644)
@@ -82,9 +82,10 @@
extern Int VG_(check_executable)(/*OUT*/Bool* is_setuid,
const HChar* f, Bool allow_setuid);
-/* Note this moves (or at least, is believed to move) the file pointer
+/* DDD: Note this moves (or at least, is believed to move) the file pointer
on Linux and AIX5 but doesn't on Darwin. This inconsistency should
- be fixed. */
+ be fixed. (In other words, why isn't the Linux/AIX5 version implemented in
+ terms of pread()?) */
extern SysRes VG_(pread) ( Int fd, void* buf, Int count, OffT offset );
/* Create and open (-rw------) a tmp file name incorporating said arg.
Modified: branches/DARWIN/include/pub_tool_basics.h
===================================================================
--- branches/DARWIN/include/pub_tool_basics.h 2009-04-27 03:27:31 UTC (rev 9643)
+++ branches/DARWIN/include/pub_tool_basics.h 2009-04-27 04:35:28 UTC (rev 9644)
@@ -112,13 +112,12 @@
// - off_t is "used for file sizes".
// At one point we were using it for memory offsets, but PtrdiffT should be
// used in those cases.
-// DDD: on Linux and AIX, off_t is a signed word-sized int. On Darwin it's
-// always a signed 64-bit int. Need to find a way to remove this #if.
-// Killing OffT in favour of Off64T everywhere might work.
+// Nb: on Linux and AIX, off_t is a signed word-sized int. On Darwin it's
+// always a signed 64-bit int. So we defined our own Off64T as well.
#if defined(VGO_linux) || defined(VGO_aix5)
typedef Word OffT; // 32 64
#elif defined(VGO_darwin)
-typedef Long OffT; // 32 64
+typedef Long OffT; // 64 64
#else
# error Unknown OS
#endif
|
|
From: <sv...@va...> - 2009-04-27 03:28:21
|
Author: njn
Date: 2009-04-27 04:27:31 +0100 (Mon, 27 Apr 2009)
New Revision: 9643
Log:
Merge r9642 (improve ms_print output) from the trunk.
Modified:
branches/DARWIN/NEWS
branches/DARWIN/massif/docs/ms-manual.xml
branches/DARWIN/massif/ms_print.in
branches/DARWIN/massif/tests/alloc-fns-A.post.exp
branches/DARWIN/massif/tests/alloc-fns-B.post.exp
branches/DARWIN/massif/tests/basic.post.exp
branches/DARWIN/massif/tests/basic2.post.exp
branches/DARWIN/massif/tests/big-alloc.post.exp
branches/DARWIN/massif/tests/custom_alloc.post.exp
branches/DARWIN/massif/tests/deep-A.post.exp
branches/DARWIN/massif/tests/deep-B.post.exp
branches/DARWIN/massif/tests/deep-C.post.exp
branches/DARWIN/massif/tests/deep-D.post.exp
branches/DARWIN/massif/tests/ignored.post.exp
branches/DARWIN/massif/tests/ignoring.post.exp
branches/DARWIN/massif/tests/insig.post.exp
branches/DARWIN/massif/tests/long-names.post.exp
branches/DARWIN/massif/tests/long-time.post.exp
branches/DARWIN/massif/tests/new-cpp.post.exp
branches/DARWIN/massif/tests/overloaded-new.post.exp
branches/DARWIN/massif/tests/peak.post.exp
branches/DARWIN/massif/tests/peak2.post.exp
branches/DARWIN/massif/tests/realloc.post.exp
branches/DARWIN/massif/tests/thresholds_0_0.post.exp
branches/DARWIN/massif/tests/thresholds_0_10.post.exp
branches/DARWIN/massif/tests/thresholds_10_0.post.exp
branches/DARWIN/massif/tests/thresholds_10_10.post.exp
branches/DARWIN/massif/tests/thresholds_5_0.post.exp
branches/DARWIN/massif/tests/thresholds_5_10.post.exp
Modified: branches/DARWIN/NEWS
===================================================================
--- branches/DARWIN/NEWS 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/NEWS 2009-04-27 03:27:31 UTC (rev 9643)
@@ -54,13 +54,19 @@
Stack traces produced when --xml=yes is specified are different and
unchanged.
+* The graphs drawn by Massif's ms_print program have changed slightly:
+ - The half-height chars '.' and ',' are no longer drawn, because they are
+ confusing. The --y option can be used if the default y-resolution is
+ not high enough.
+ - Horizontal lines are now drawn after the top of a snapshot if there is a
+ gap until the next snapshot. This makes it clear that the memory
+ usage has not dropped to zero between snapshots.
+
* The location of some install files has changed. This should not affect
most users. Those who might be affected:
-
- For people who use Valgrind with MPI programs, the installed
libmpiwrap.so library has moved from $(INSTALL)/<platform>/libmpiwrap.so
to $(INSTALL)/libmpiwrap-<platform>.so.
-
- For people who distribute standalone Valgrind tools, the installed
libraries such as $(INSTALL)/<platform>/libcoregrind.a have moved to
$(INSTALL)/libcoregrind-<platform>.a.
Modified: branches/DARWIN/massif/docs/ms-manual.xml
===================================================================
--- branches/DARWIN/massif/docs/ms-manual.xml 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/docs/ms-manual.xml 2009-04-27 03:27:31 UTC (rev 9643)
@@ -174,15 +174,15 @@
| #
| #
| #
+ | #
+ | #
+ | #
| :#
| :#
| :#
- | :#
- | :#
- | :#
- 0 +----------------------------------------------------------------------->ki
- 0 121.8
+ 0 +----------------------------------------------------------------------->ki 0 113.4
+
Number of snapshots: 25
Detailed snapshots: [9, 14 (peak), 24]
]]></screen>
@@ -201,40 +201,40 @@
re-run ms_print, we get this more useful graph:</para>
<screen><![CDATA[
- KB
-19.63^ #
- | # .
- | # : .
- | # : : .
- | : # : : : .
- | : # : : : : .
- | : # : : : : : .
- | : # : : : : : : .
- | : : # : : : : : : : .
- | : : # : : : : : : : : .
- | : : : # : : : : : : : : : ,
- | @ : : : # : : : : : : : : : @
- | : @ : : : # : : : : : : : : : @
- | : : @ : : : # : : : : : : : : : @
- | : : : @ : : : # : : : : : : : : : @
- | : : : : @ : : : # : : : : : : : : : @
- | : : : : : @ : : : # : : : : : : : : : @
- | : : : : : : @ : : : # : : : : : : : : : @
- | : : : : : : : @ : : : # : : : : : : : : : @
- | : : : : : : : : @ : : : # : : : : : : : : : @
- 0 +----------------------------------------------------------------------->KB
- 0 29.48
+19.63^ ###
+ | #
+ | # ::
+ | # : :::
+ | :::::::::# : : ::
+ | : # : : : ::
+ | : # : : : : :::
+ | : # : : : : : ::
+ | ::::::::::: # : : : : : : :::
+ | : : # : : : : : : : ::
+ | ::::: : # : : : : : : : : ::
+ | @@@: : : # : : : : : : : : : @
+ | ::@ : : : # : : : : : : : : : @
+ | :::: @ : : : # : : : : : : : : : @
+ | ::: : @ : : : # : : : : : : : : : @
+ | ::: : : @ : : : # : : : : : : : : : @
+ | :::: : : : @ : : : # : : : : : : : : : @
+ | ::: : : : : @ : : : # : : : : : : : : : @
+ | :::: : : : : : @ : : : # : : : : : : : : : @
+ | ::: : : : : : : @ : : : # : : : : : : : : : @
+ 0 +----------------------------------------------------------------------->KB 0 29.48
Number of snapshots: 25
Detailed snapshots: [9, 14 (peak), 24]
]]></screen>
<para>Each vertical bar represents a snapshot, i.e. a measurement of the
-memory usage at a certain point in time. The text at the bottom show that
-25 snapshots were taken for this program, which is one per heap
-allocation/deallocation, plus a couple of extras. Massif starts by taking
-snapshots for every heap allocation/deallocation, but as a program runs for
-longer, it takes snapshots less frequently. It also discards older
+memory usage at a certain point in time. If the next snapshot is more than
+one column away, a horizontal line of characters is drawn from the top of
+the snapshot to just before the next snapshot column. The text at the
+bottom show that 25 snapshots were taken for this program, which is one per
+heap allocation/deallocation, plus a couple of extras. Massif starts by
+taking snapshots for every heap allocation/deallocation, but as a program
+runs for longer, it takes snapshots less frequently. It also discards older
snapshots as the program goes on; when it reaches the maximum number of
snapshots (100 by default, although changeable with the
<computeroutput>--max-snapshots</computeroutput> option) half of them are
@@ -243,12 +243,12 @@
<para>Most snapshots are <emphasis>normal</emphasis>, and only basic
information is recorded for them. Normal snapshots are represented in the
-graph by bars consisting of ':' and '.' characters.</para>
+graph by bars consisting of ':' characters.</para>
<para>Some snapshots are <emphasis>detailed</emphasis>. Information about
where allocations happened are recorded for these snapshots, as we will see
shortly. Detailed snapshots are represented in the graph by bars consisting
-of '@' and ',' characters. The text at the bottom show that 3 detailed
+of '@' characters. The text at the bottom show that 3 detailed
snapshots were taken for this program (snapshots 9, 14 and 24). By default,
every 10th snapshot is detailed, although this can be changed via the
<computeroutput>--detailed-freq</computeroutput> option.</para>
@@ -256,7 +256,7 @@
<para>Finally, there is at most one <emphasis>peak</emphasis> snapshot. The
peak snapshot is a detailed snapshot, and records the point where memory
consumption was greatest. The peak snapshot is represented in the graph by
-a bar consisting of '#' and ',' characters. The text at the bottom shows
+a bar consisting of '#' characters. The text at the bottom shows
that snapshot 14 was the peak. Note that for tiny programs that never
deallocate heap memory, Massif will not record a peak snapshot.</para>
@@ -272,26 +272,26 @@
browser. It shows what graphs for larger programs look like.</para>
<screen><![CDATA[
MB
-3.952^ #.
- | ,@#:
- | , .. :@@#:
- | @ :: :@@#:.
- | ,@ :: :@@#::
- | , .@@@ :: :@@#:.
- | .@ :@@@ :: :@@#::
+3.952^ #
+ | @#:
+ | :@@#:
+ | @@::::@@#:
+ | @ :: :@@#::
+ | @@@ :: :@@#::
+ | @@:@@@ :: :@@#::
+ | :::@ :@@@ :: :@@#::
| : :@ :@@@ :: :@@#::
- | ,: :@ :@@@ :: :@@#::
- | ,:@: :@ :@@@ :: :@@#::.
+ | :@: :@ :@@@ :: :@@#::
| @@:@: :@ :@@@ :: :@@#:::
- | ,,: .:: . , .::@@:@: :@ :@@@ :: :@@#:::
- | .:@@: .: ::: ::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | ,: ::@@: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | @: ::@@: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#::.
+ | : :: ::@@:@: :@ :@@@ :: :@@#:::
+ | :@@: ::::: ::::@@@:::@@:@: :@ :@@@ :: :@@#:::
+ | ::::@@: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
| @: ::@@: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | , @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | ::@ @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | , :::::@ @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | ..@ :::::@ @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
+ | @: ::@@: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
+ | @: ::@@:::::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
+ | ::@@@: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
+ | :::::@ @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
+ | @@:::::@ @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
0 +----------------------------------------------------------------------->Mi
0 626.4
@@ -424,8 +424,9 @@
11, and half was due to a call from line 25.</para>
<para>In short, Massif collates the stack trace of every single allocation
-point in the program into a single tree, which gives a complete picture of
-how and why all heap memory was allocated.</para>
+point in the program into a single tree, which gives a complete picture at
+a particular point in time of how and why all heap memory was
+allocated.</para>
<para>Note that the tree entries correspond not to functions, but to
individual code locations. For example, if function <function>A</function>
@@ -436,16 +437,16 @@
from line 15 (e.g. due to a loop), then each of those calls will be
represented by the same stack trace in the tree.</para>
-<para>Note also that tree entry with children in the example satisfies an
+<para>Note also that each tree entry with children in the example satisfies an
invariant: the entry's size is equal to the sum of its children's sizes.
For example, the first entry has size 20,000B, and its children have sizes
10,000B, 8,000B, and 2,000B. In general, this invariant almost always
holds. However, in rare circumstances stack traces can be malformed, in
which case a stack trace can be a sub-trace of another stack trace. This
means that some entries in the tree may not satisfy the invariant -- the
-entry's size will be greater than the sum of its children's sizes. Massif
-can sometimes detect when this happens; if it does, it issues a
-warning:</para>
+entry's size will be greater than the sum of its children's sizes. This is
+not a big problem, but could make the results confusing. Massif can
+sometimes detect when this happens; if it does, it issues a warning:</para>
<screen><![CDATA[
Warning: Malformed stack trace detected. In Massif's output,
Modified: branches/DARWIN/massif/ms_print.in
===================================================================
--- branches/DARWIN/massif/ms_print.in 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/ms_print.in 2009-04-27 03:27:31 UTC (rev 9643)
@@ -507,25 +507,20 @@
# Each row represents K bytes, which is 1/graph_y of the peak size
# (and K can be non-integral). When drawing the column for a snapshot,
# in order to fill the slot in row y (where the first row drawn on is
- # row 1) with a half-char (eg. '.'), it must be >= (y - 1/2)*K. In
- # order to fill a row/column spot with a full-char (eg. ':'), it must be
- # >= y*K. For example, if K = 10 bytes, then the values 0, 4, 5, 9, 10,
- # 14, 15, 19, 20, 24, 25, 29, 30 would be drawn like this (showing one
- # per column):
+ # row 1) with a full-char (eg. ':'), it must be >= y*K. For example, if
+ # K = 10 bytes, then the values 0, 4, 5, 9, 10, 14, 15, 19, 20, 24, 25,
+ # 29, 30 would be drawn like this (showing one per column):
#
- # y (y - 1/2) * K y * K
- # - ------------- -----------
- # 30 | ..: 3 (3 - 1/2) * 10 = 25 3 * 10 = 30
- # 20 | ..::::: 2 (2 - 1/2) * 10 = 15 2 * 10 = 20
- # 10 | ..::::::::: 1 (1 - 1/2) * 10 = 5 1 * 10 = 10
+ # y y * K
+ # - -----------
+ # 30 | : 3 3 * 10 = 30
+ # 20 | ::::: 2 2 * 10 = 20
+ # 10 | ::::::::: 1 1 * 10 = 10
# 0 +-------------
- my $peak_full_char = '#';
- my $detailed_full_char = '@';
- my $normal_full_char = ':';
- my $peak_half_char = ',';
- my $detailed_half_char = ',';
- my $normal_half_char = '.';
+ my $peak_char = '#';
+ my $detailed_char = '@';
+ my $normal_char = ':';
# Work out how many bytes each row represents. If the peak size was 0,
# make it 1 so that the Y-axis covers a non-zero range of values.
@@ -534,9 +529,15 @@
if (0 == $end_time ) { $end_time = 1; }
my $K = $peak_mem_total_szB / $graph_y;
+ $x = 0;
+ my $prev_x = 0;
+ my $prev_y_max = 0;
+ my $prev_char = ':';
+
for (my $i = 0; $i < $n_snapshots; $i++) {
# Work out which column this snapshot belongs to.
+ $prev_x = $x;
my $x_pos_frac = ($times[$i] / ($end_time)) * $graph_x;
$x = int($x_pos_frac) + 1; # +1 due to Y-axis
# The final snapshot will spill over into the n+1th column, which
@@ -547,41 +548,49 @@
$x = $graph_x;
}
- # Draw the column if:
- # - it's the peak column, or
- # - it's a detailed column, and we won't overwrite the peak column, or
- # - it's a normal column, and we won't overwrite the peak column or a
- # detailed column.
- my $should_draw_column =
- (($i == $peak_num) or
- ($is_detaileds[$i] and $graph[$x][1] ne $peak_full_char) or
- ($graph[$x][1] ne $peak_full_char and
- $graph[$x][1] ne $detailed_full_char));
+ # If there was a gap between the previous snapshot's column and this
+ # one, we draw a horizontal line in the gap (so long as it doesn't
+ # trash the x-axis). Without this, graphs with a few sparse
+ # snapshots look funny -- as if the memory usage is in temporary
+ # spikes.
+ if ($prev_y_max > 0) {
+ for (my $x2 = $prev_x + 1; $x2 < $x; $x2++) {
+ $graph[$x2][$prev_y_max] = $prev_char;
+ }
+ }
- if ($should_draw_column) {
- # If it's detailed, mark the X-axis. Also choose the full-slot
- # char.
- my ($full_char, $half_char);
- if ($i == $peak_num) {
- $full_char = $peak_full_char;
- $half_char = $peak_half_char;
- } elsif ($is_detaileds[$i]) {
- $full_char = $detailed_full_char;
- $half_char = $detailed_half_char;
- } else {
- $full_char = $normal_full_char;
- $half_char = $normal_half_char;
- }
- # Grow this snapshot bar from bottom to top.
- for ($y = 1; $y <= $graph_y; $y++) {
- if ($mem_total_Bs[$i] >= ($y - 1/2) * $K) {
- $graph[$x][$y] = $half_char;
- }
- if ($mem_total_Bs[$i] >= $y * $K) {
- $graph[$x][$y] = $full_char;
+ # Choose the column char.
+ my $char;
+ if ($i == $peak_num) { $char = $peak_char; }
+ elsif ($is_detaileds[$i]) { $char = $detailed_char; }
+ else { $char = $normal_char; }
+
+ # Grow this snapshot bar from bottom to top.
+ my $y_max = 0;
+ for ($y = 1; $y <= $graph_y; $y++) {
+ if ($mem_total_Bs[$i] >= $y * $K) {
+ # Priority order for chars: peak > detailed > normal
+ my $should_draw_char =
+ (($char eq $peak_char)
+ or
+ ($char eq $detailed_char and
+ $graph[$x][$y] ne $peak_char
+ )
+ or
+ ($char eq $normal_char and
+ $graph[$x][$y] ne $peak_char and
+ $graph[$x][$y] ne $detailed_char
+ )
+ );
+
+ if ($should_draw_char) {
+ $graph[$x][$y] = $char;
}
+ $y_max = $y;
}
}
+ $prev_y_max = $y_max;
+ $prev_char = $char;
}
#-------------------------------------------------------------------------
@@ -669,5 +678,3 @@
##--------------------------------------------------------------------##
##--- end ms_print.in ---##
##--------------------------------------------------------------------##
-
-
Modified: branches/DARWIN/massif/tests/alloc-fns-A.post.exp
===================================================================
--- branches/DARWIN/massif/tests/alloc-fns-A.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/alloc-fns-A.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -8,24 +8,24 @@
KB
3.516^ @
| @
- | . @
+ | @
+ | :::::::@
| : @
- | . : @
+ | ::::::::: @
| : : @
- | : : @
+ | ::::::::: : @
| : : : @
- | : : : @
+ | ::::::::: : : @
| : : : : @
| : : : : @
- | . : : : : @
+ | ::::::::: : : : @
| : : : : : @
- | . : : : : : @
+ | ::::::::: : : : : @
| : : : : : : @
- | : : : : : : @
+ | ::::::::: : : : : : @
| : : : : : : : @
- | : : : : : : : @
+ | ::::::::: : : : : : : @
| : : : : : : : : @
- | : : : : : : : : @
0 +----------------------------------------------------------------------->KB
0 3.516
Modified: branches/DARWIN/massif/tests/alloc-fns-B.post.exp
===================================================================
--- branches/DARWIN/massif/tests/alloc-fns-B.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/alloc-fns-B.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -8,24 +8,24 @@
KB
3.516^ @
| @
- | . @
+ | @
+ | :::::::@
| : @
- | . : @
+ | ::::::::: @
| : : @
- | : : @
+ | ::::::::: : @
| : : : @
- | : : : @
+ | ::::::::: : : @
| : : : : @
| : : : : @
- | . : : : : @
+ | ::::::::: : : : @
| : : : : : @
- | . : : : : : @
+ | ::::::::: : : : : @
| : : : : : : @
- | : : : : : : @
+ | ::::::::: : : : : : @
| : : : : : : : @
- | : : : : : : : @
+ | ::::::::: : : : : : : @
| : : : : : : : : @
- | : : : : : : : : @
0 +----------------------------------------------------------------------->KB
0 3.516
Modified: branches/DARWIN/massif/tests/basic.post.exp
===================================================================
--- branches/DARWIN/massif/tests/basic.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/basic.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -7,25 +7,25 @@
KB
14.34^ #
- | .:#:.
- | .:::#:::.
- | .:::::#:::::.
- | .@::::::#:::::::.
+ | :#:
+ | :::#:::
+ | :::::#:::::
+ | @::::::#:::::::
| ::@::::::#:::::::::
- | .:::@::::::#:::::::::@.
- | .:::::@::::::#:::::::::@::.
- | .:::::::@::::::#:::::::::@::::.
- | ,:::::::::@::::::#:::::::::@::::::.
+ | :::@::::::#:::::::::@
+ | :::::@::::::#:::::::::@::
+ | :::::::@::::::#:::::::::@::::
+ | :::::::::@::::::#:::::::::@::::::
| :@:::::::::@::::::#:::::::::@::::::::
- | .::@:::::::::@::::::#:::::::::@:::::::::,
- | .::::@:::::::::@::::::#:::::::::@:::::::::@:.
- | .::::::@:::::::::@::::::#:::::::::@:::::::::@:::.
- | .::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::.
+ | ::@:::::::::@::::::#:::::::::@:::::::::
+ | ::::@:::::::::@::::::#:::::::::@:::::::::@:
+ | ::::::@:::::::::@::::::#:::::::::@:::::::::@:::
+ | ::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::
| @:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::
- | .:@:::::::::@:::::::::@::::::#:::::::::@:::::::::@::::::::.
- | .:::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@.
- | .:::::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@::.
- | .:::::::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@::::.
+ | :@:::::::::@:::::::::@::::::#:::::::::@:::::::::@::::::::
+ | :::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@
+ | :::::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@::
+ | :::::::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@::::
0 +----------------------------------------------------------------------->KB
0 28.29
Modified: branches/DARWIN/massif/tests/basic2.post.exp
===================================================================
--- branches/DARWIN/massif/tests/basic2.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/basic2.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -6,24 +6,24 @@
KB
-14.34^ #
+14.34^ ########
| #
| #
| #
- | # ,
+ | #
+ | @@@@@@@@@@# @@@@@@@@@
| @ # @
| @ # @
| @ # @
- | @ # @
- | , @ # @ @
+ | @ # @ @@@@@@@@
+ | @@@@@@@@@ # @ @
| @ @ # @ @
| @ @ # @ @
| @ @ # @ @
- | @ @ # @ @ ,
- | @ @ # @ @ @
+ | @ @ # @ @ @@@@@@@@
+ | @@@@@@@@@@@@ @ # @ @ @
| @ @ @ # @ @ @
| @ @ @ # @ @ @
- | @ @ @ # @ @ @
| @ @ @ # @ @ @ @
| @ @ @ # @ @ @ @
0 +----------------------------------------------------------------------->KB
Modified: branches/DARWIN/massif/tests/big-alloc.post.exp
===================================================================
--- branches/DARWIN/massif/tests/big-alloc.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/big-alloc.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -8,24 +8,24 @@
MB
100.0^ :
| :
+ | @@@@@@@:
| @ :
- | @ :
+ | :::::::@ :
| : @ :
- | : @ :
+ | :::::::: @ :
| : : @ :
- | : : @ :
+ | :::::::: : @ :
| : : : @ :
- | : : : @ :
+ | :::::::: : : @ :
| : : : : @ :
- | : : : : @ :
+ | ::::::::: : : : @ :
| : : : : : @ :
- | : : : : : @ :
+ | :::::::: : : : : @ :
| : : : : : : @ :
- | : : : : : : @ :
+ | :::::::: : : : : : @ :
| : : : : : : : @ :
- | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
| : : : : : : : : @ :
- | : : : : : : : : @ :
0 +----------------------------------------------------------------------->MB
0 100.0
Modified: branches/DARWIN/massif/tests/custom_alloc.post.exp
===================================================================
--- branches/DARWIN/massif/tests/custom_alloc.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/custom_alloc.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -6,7 +6,7 @@
B
- 816^ # :
+ 816^ ############ :::::::::::
| # :
| # :
| # :
@@ -16,6 +16,7 @@
| # :
| # :
| # :
+ | @@@@@@ # :::::: :
| @ # : :
| @ # : :
| @ # : :
@@ -25,7 +26,6 @@
| @ # : :
| @ # : :
| @ # : :
- | @ # : :
0 +----------------------------------------------------------------------->KB
0 4.812
Modified: branches/DARWIN/massif/tests/deep-A.post.exp
===================================================================
--- branches/DARWIN/massif/tests/deep-A.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/deep-A.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -8,24 +8,24 @@
KB
3.984^ :
| :
+ | @@@@@@@:
| @ :
- | @ :
+ | :::::::@ :
| : @ :
- | : @ :
+ | :::::::: @ :
| : : @ :
- | : : @ :
+ | :::::::: : @ :
| : : : @ :
- | : : : @ :
+ | :::::::: : : @ :
| : : : : @ :
- | : : : : @ :
+ | ::::::::: : : : @ :
| : : : : : @ :
- | : : : : : @ :
+ | :::::::: : : : : @ :
| : : : : : : @ :
- | : : : : : : @ :
+ | :::::::: : : : : : @ :
| : : : : : : : @ :
- | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
| : : : : : : : : @ :
- | : : : : : : : : @ :
0 +----------------------------------------------------------------------->KB
0 3.984
Modified: branches/DARWIN/massif/tests/deep-B.post.exp
===================================================================
--- branches/DARWIN/massif/tests/deep-B.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/deep-B.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -8,24 +8,24 @@
KB
3.984^ :
| :
+ | @@@@@@@:
| @ :
- | @ :
+ | :::::::@ :
| : @ :
- | : @ :
+ | :::::::: @ :
| : : @ :
- | : : @ :
+ | :::::::: : @ :
| : : : @ :
- | : : : @ :
+ | :::::::: : : @ :
| : : : : @ :
- | : : : : @ :
+ | ::::::::: : : : @ :
| : : : : : @ :
- | : : : : : @ :
+ | :::::::: : : : : @ :
| : : : : : : @ :
- | : : : : : : @ :
+ | :::::::: : : : : : @ :
| : : : : : : : @ :
- | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
| : : : : : : : : @ :
- | : : : : : : : : @ :
0 +----------------------------------------------------------------------->KB
0 3.984
Modified: branches/DARWIN/massif/tests/deep-C.post.exp
===================================================================
--- branches/DARWIN/massif/tests/deep-C.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/deep-C.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -8,24 +8,24 @@
KB
3.984^ :
| :
+ | @@@@@@@:
| @ :
- | @ :
+ | :::::::@ :
| : @ :
- | : @ :
+ | :::::::: @ :
| : : @ :
- | : : @ :
+ | :::::::: : @ :
| : : : @ :
- | : : : @ :
+ | :::::::: : : @ :
| : : : : @ :
- | : : : : @ :
+ | ::::::::: : : : @ :
| : : : : : @ :
- | : : : : : @ :
+ | :::::::: : : : : @ :
| : : : : : : @ :
- | : : : : : : @ :
+ | :::::::: : : : : : @ :
| : : : : : : : @ :
- | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
| : : : : : : : : @ :
- | : : : : : : : : @ :
0 +----------------------------------------------------------------------->KB
0 3.984
Modified: branches/DARWIN/massif/tests/deep-D.post.exp
===================================================================
--- branches/DARWIN/massif/tests/deep-D.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/deep-D.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -8,24 +8,24 @@
KB
3.984^ :
| :
+ | @@@@@@@:
| @ :
- | @ :
+ | :::::::@ :
| : @ :
- | : @ :
+ | :::::::: @ :
| : : @ :
- | : : @ :
+ | :::::::: : @ :
| : : : @ :
- | : : : @ :
+ | :::::::: : : @ :
| : : : : @ :
- | : : : : @ :
+ | ::::::::: : : : @ :
| : : : : : @ :
- | : : : : : @ :
+ | :::::::: : : : : @ :
| : : : : : : @ :
- | : : : : : : @ :
+ | :::::::: : : : : : @ :
| : : : : : : : @ :
- | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
| : : : : : : : : @ :
- | : : : : : : : : @ :
0 +----------------------------------------------------------------------->KB
0 3.984
Modified: branches/DARWIN/massif/tests/ignored.post.exp
===================================================================
--- branches/DARWIN/massif/tests/ignored.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/ignored.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -16,6 +16,7 @@
| #
| #
| #
+ | :::::::::::::::::::::::::::::::::::#
| : #
| : #
| : #
@@ -25,7 +26,6 @@
| : #
| : #
| : #
- | : #
0 +----------------------------------------------------------------------->B
0 800
Modified: branches/DARWIN/massif/tests/ignoring.post.exp
===================================================================
--- branches/DARWIN/massif/tests/ignoring.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/ignoring.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -6,16 +6,16 @@
KB
-1.008^#
+1.008^##
|#
|#
|#
|#
+ |# ::::::::::::@:::@:::@:::@:::@::::@:::::::@:::::::@:::::::@::::
|# ::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# ::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# ::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# ::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
- |# ::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# @:::@:::::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# @:::@:::::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# @:::@:::::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
Modified: branches/DARWIN/massif/tests/insig.post.exp
===================================================================
--- branches/DARWIN/massif/tests/insig.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/insig.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -6,10 +6,11 @@
KB
-19.23^ .:
- | ..:@::
- | .,::::@::
- | .:::@::::@::
+19.23^ :
+ | :@::
+ | ::::@::
+ | :::@::::@::
+ | ::::::@::::@::
| : ::::@::::@::
| : ::::@::::@::
| : ::::@::::@::
@@ -25,7 +26,6 @@
| : ::::@::::@::
| : ::::@::::@::
| : ::::@::::@::
- | : ::::@::::@::
0 +----------------------------------------------------------------------->KB
0 19.23
Modified: branches/DARWIN/massif/tests/long-names.post.exp
===================================================================
--- branches/DARWIN/massif/tests/long-names.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/long-names.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -13,19 +13,19 @@
| :
| :
| :
+ | @@@@@@@@@@@@@@@@@@@@@@@:
| @ :
| @ :
| @ :
| @ :
| @ :
| @ :
- | . @ :
+ | ::::::::::::::::::::::::@ :
| : @ :
| : @ :
| : @ :
| : @ :
| : @ :
- | : @ :
0 +----------------------------------------------------------------------->KB
0 5.859
Modified: branches/DARWIN/massif/tests/long-time.post.exp
===================================================================
--- branches/DARWIN/massif/tests/long-time.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/long-time.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -9,17 +9,17 @@
2.193^#: : : : @ : :
|#: : : : @ : :
|#: : : : @ : :
- |#: :. :. :. @. :, .
+ |#: : : : @ : :
|#: :: :: :: @: :@ :
|#: :: :: :: @: :@ :
|#: :: :: :: @: :@ :
|#: :: :: :: @: :@ :
|#: :: :: :: @: :@ :
|#: :: :: :: @: :@ :
- |#: :: :: :: @: :@ : :. :. :. :. :, :. :. . :. :, :. :
- |#: :: :: :: @: :@ : :: :: :: :: :@ :: :: : :: :@ :: :
- |#:...,..............:: :: :: @: :@ : ::.::,::.:: :@ :: :: ,: :: :@ :: :
- |#::::@:::::::::::::::: :: :: @: :@ : :::::@:::::.:@.::.::.@:.::.:@.::.:
+ |#: :: :: :: @: :@ : : : : : : : : : : : : :
+ |#: :: :: :: @: :@ : :: :: :: :: :@ :: :: :: :: :@ :: :
+ |#: :: :: :: @: :@ : :: :: :: :: :@ :: :: :: :: :@ :: :
+ |#::::@:::::::::::::::: :: :: @: :@ : :::::@::::: :@ :: :: @: :: :@ :: :
|#::::@:::::::::::::::: :: :: @: :@ : :::::@:::::::@:::::::@::::::@:::::
|#::::@:::::::::::::::: :: :: @: :@ : :::::@:::::::@:::::::@::::::@:::::
|#::::@:::::::::::::::: :: :: @: :@ : :::::@:::::::@:::::::@::::::@:::::
Modified: branches/DARWIN/massif/tests/new-cpp.post.exp
===================================================================
--- branches/DARWIN/massif/tests/new-cpp.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
+++ branches/DARWIN/massif/tests/new-cpp.post.exp 2009-04-27 03:27:31 UTC (rev 9643)
@@ -6,26 +6,26 @@
KB
-11.75^ #
+11.75^ ###########
| #
| #
- | . #
+ | #
+ | :::::::#
| : #
| : #
- | : #
+ | ::::::: # ::::::::::::
| : : # :
| : : # :
| : : # :
| : : # :
| : : # :
| : : # :
- | . : : # : .
+ | ::::::::::::: : # : ::::::
| : : : # : :
| : : : # : :
- | : : : # : :
+ | : : : # : : ::::::
| : : : # : : :
| : : : # : : :
- | : ...
[truncated message content] |
|
From: Tom H. <th...@cy...> - 2009-04-27 02:45:23
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2009-04-27 03:05:06 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 478 tests, 0 stderr failures, 0 stdout failures, 0 post failures == |
|
From: Tom H. <th...@cy...> - 2009-04-27 02:28:08
|
Nightly build on mg ( x86_64, Fedora 9 ) started at 2009-04-27 03:10:05 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 484 tests, 0 stderr failures, 1 stdout failure, 0 post failures == none/tests/linux/mremap2 (stdout) |
|
From: <sv...@va...> - 2009-04-27 01:28:13
|
Author: njn
Date: 2009-04-27 02:27:58 +0100 (Mon, 27 Apr 2009)
New Revision: 9642
Log:
Make the graphs drawn by ms_print less confusing.
Modified:
trunk/NEWS
trunk/massif/docs/ms-manual.xml
trunk/massif/ms_print.in
trunk/massif/tests/alloc-fns-A.post.exp
trunk/massif/tests/alloc-fns-B.post.exp
trunk/massif/tests/basic.post.exp
trunk/massif/tests/basic2.post.exp
trunk/massif/tests/big-alloc.post.exp
trunk/massif/tests/custom_alloc.post.exp
trunk/massif/tests/deep-A.post.exp
trunk/massif/tests/deep-B.post.exp
trunk/massif/tests/deep-C.post.exp
trunk/massif/tests/deep-D.post.exp
trunk/massif/tests/ignored.post.exp
trunk/massif/tests/ignoring.post.exp
trunk/massif/tests/insig.post.exp
trunk/massif/tests/long-names.post.exp
trunk/massif/tests/long-time.post.exp
trunk/massif/tests/new-cpp.post.exp
trunk/massif/tests/overloaded-new.post.exp
trunk/massif/tests/peak.post.exp
trunk/massif/tests/peak2.post.exp
trunk/massif/tests/realloc.post.exp
trunk/massif/tests/thresholds_0_0.post.exp
trunk/massif/tests/thresholds_0_10.post.exp
trunk/massif/tests/thresholds_10_0.post.exp
trunk/massif/tests/thresholds_10_10.post.exp
trunk/massif/tests/thresholds_5_0.post.exp
trunk/massif/tests/thresholds_5_10.post.exp
Modified: trunk/NEWS
===================================================================
--- trunk/NEWS 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/NEWS 2009-04-27 01:27:58 UTC (rev 9642)
@@ -38,13 +38,19 @@
Stack traces produced when --xml=yes is specified are different and
unchanged.
+* The graphs drawn by Massif's ms_print program have changed slightly:
+ - The half-height chars '.' and ',' are no longer drawn, because they are
+ confusing. The --y option can be used if the default y-resolution is
+ not high enough.
+ - Horizontal lines are now drawn after the top of a snapshot if there is a
+ gap until the next snapshot. This makes it clear that the memory
+ usage has not dropped to zero between snapshots.
+
* The location of some install files has changed. This should not affect
most users. Those who might be affected:
-
- For people who use Valgrind with MPI programs, the installed
libmpiwrap.so library has moved from $(INSTALL)/<platform>/libmpiwrap.so
to $(INSTALL)/libmpiwrap-<platform>.so.
-
- For people who distribute standalone Valgrind tools, the installed
libraries such as $(INSTALL)/<platform>/libcoregrind.a have moved to
$(INSTALL)/libcoregrind-<platform>.a.
Modified: trunk/massif/docs/ms-manual.xml
===================================================================
--- trunk/massif/docs/ms-manual.xml 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/docs/ms-manual.xml 2009-04-27 01:27:58 UTC (rev 9642)
@@ -174,15 +174,15 @@
| #
| #
| #
+ | #
+ | #
+ | #
| :#
| :#
| :#
- | :#
- | :#
- | :#
- 0 +----------------------------------------------------------------------->ki
- 0 121.8
+ 0 +----------------------------------------------------------------------->ki 0 113.4
+
Number of snapshots: 25
Detailed snapshots: [9, 14 (peak), 24]
]]></screen>
@@ -201,40 +201,40 @@
re-run ms_print, we get this more useful graph:</para>
<screen><![CDATA[
- KB
-19.63^ #
- | # .
- | # : .
- | # : : .
- | : # : : : .
- | : # : : : : .
- | : # : : : : : .
- | : # : : : : : : .
- | : : # : : : : : : : .
- | : : # : : : : : : : : .
- | : : : # : : : : : : : : : ,
- | @ : : : # : : : : : : : : : @
- | : @ : : : # : : : : : : : : : @
- | : : @ : : : # : : : : : : : : : @
- | : : : @ : : : # : : : : : : : : : @
- | : : : : @ : : : # : : : : : : : : : @
- | : : : : : @ : : : # : : : : : : : : : @
- | : : : : : : @ : : : # : : : : : : : : : @
- | : : : : : : : @ : : : # : : : : : : : : : @
- | : : : : : : : : @ : : : # : : : : : : : : : @
- 0 +----------------------------------------------------------------------->KB
- 0 29.48
+19.63^ ###
+ | #
+ | # ::
+ | # : :::
+ | :::::::::# : : ::
+ | : # : : : ::
+ | : # : : : : :::
+ | : # : : : : : ::
+ | ::::::::::: # : : : : : : :::
+ | : : # : : : : : : : ::
+ | ::::: : # : : : : : : : : ::
+ | @@@: : : # : : : : : : : : : @
+ | ::@ : : : # : : : : : : : : : @
+ | :::: @ : : : # : : : : : : : : : @
+ | ::: : @ : : : # : : : : : : : : : @
+ | ::: : : @ : : : # : : : : : : : : : @
+ | :::: : : : @ : : : # : : : : : : : : : @
+ | ::: : : : : @ : : : # : : : : : : : : : @
+ | :::: : : : : : @ : : : # : : : : : : : : : @
+ | ::: : : : : : : @ : : : # : : : : : : : : : @
+ 0 +----------------------------------------------------------------------->KB 0 29.48
Number of snapshots: 25
Detailed snapshots: [9, 14 (peak), 24]
]]></screen>
<para>Each vertical bar represents a snapshot, i.e. a measurement of the
-memory usage at a certain point in time. The text at the bottom show that
-25 snapshots were taken for this program, which is one per heap
-allocation/deallocation, plus a couple of extras. Massif starts by taking
-snapshots for every heap allocation/deallocation, but as a program runs for
-longer, it takes snapshots less frequently. It also discards older
+memory usage at a certain point in time. If the next snapshot is more than
+one column away, a horizontal line of characters is drawn from the top of
+the snapshot to just before the next snapshot column. The text at the
+bottom show that 25 snapshots were taken for this program, which is one per
+heap allocation/deallocation, plus a couple of extras. Massif starts by
+taking snapshots for every heap allocation/deallocation, but as a program
+runs for longer, it takes snapshots less frequently. It also discards older
snapshots as the program goes on; when it reaches the maximum number of
snapshots (100 by default, although changeable with the
<computeroutput>--max-snapshots</computeroutput> option) half of them are
@@ -243,12 +243,12 @@
<para>Most snapshots are <emphasis>normal</emphasis>, and only basic
information is recorded for them. Normal snapshots are represented in the
-graph by bars consisting of ':' and '.' characters.</para>
+graph by bars consisting of ':' characters.</para>
<para>Some snapshots are <emphasis>detailed</emphasis>. Information about
where allocations happened are recorded for these snapshots, as we will see
shortly. Detailed snapshots are represented in the graph by bars consisting
-of '@' and ',' characters. The text at the bottom show that 3 detailed
+of '@' characters. The text at the bottom show that 3 detailed
snapshots were taken for this program (snapshots 9, 14 and 24). By default,
every 10th snapshot is detailed, although this can be changed via the
<computeroutput>--detailed-freq</computeroutput> option.</para>
@@ -256,7 +256,7 @@
<para>Finally, there is at most one <emphasis>peak</emphasis> snapshot. The
peak snapshot is a detailed snapshot, and records the point where memory
consumption was greatest. The peak snapshot is represented in the graph by
-a bar consisting of '#' and ',' characters. The text at the bottom shows
+a bar consisting of '#' characters. The text at the bottom shows
that snapshot 14 was the peak. Note that for tiny programs that never
deallocate heap memory, Massif will not record a peak snapshot.</para>
@@ -272,26 +272,26 @@
browser. It shows what graphs for larger programs look like.</para>
<screen><![CDATA[
MB
-3.952^ #.
- | ,@#:
- | , .. :@@#:
- | @ :: :@@#:.
- | ,@ :: :@@#::
- | , .@@@ :: :@@#:.
- | .@ :@@@ :: :@@#::
+3.952^ #
+ | @#:
+ | :@@#:
+ | @@::::@@#:
+ | @ :: :@@#::
+ | @@@ :: :@@#::
+ | @@:@@@ :: :@@#::
+ | :::@ :@@@ :: :@@#::
| : :@ :@@@ :: :@@#::
- | ,: :@ :@@@ :: :@@#::
- | ,:@: :@ :@@@ :: :@@#::.
+ | :@: :@ :@@@ :: :@@#::
| @@:@: :@ :@@@ :: :@@#:::
- | ,,: .:: . , .::@@:@: :@ :@@@ :: :@@#:::
- | .:@@: .: ::: ::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | ,: ::@@: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | @: ::@@: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#::.
+ | : :: ::@@:@: :@ :@@@ :: :@@#:::
+ | :@@: ::::: ::::@@@:::@@:@: :@ :@@@ :: :@@#:::
+ | ::::@@: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
| @: ::@@: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | , @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | ::@ @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | , :::::@ @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
- | ..@ :::::@ @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
+ | @: ::@@: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
+ | @: ::@@:::::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
+ | ::@@@: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
+ | :::::@ @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
+ | @@:::::@ @: ::@@:: ::: ::::::: @ :::@@:@: :@ :@@@ :: :@@#:::
0 +----------------------------------------------------------------------->Mi
0 626.4
@@ -424,8 +424,9 @@
11, and half was due to a call from line 25.</para>
<para>In short, Massif collates the stack trace of every single allocation
-point in the program into a single tree, which gives a complete picture of
-how and why all heap memory was allocated.</para>
+point in the program into a single tree, which gives a complete picture at
+a particular point in time of how and why all heap memory was
+allocated.</para>
<para>Note that the tree entries correspond not to functions, but to
individual code locations. For example, if function <function>A</function>
@@ -436,16 +437,16 @@
from line 15 (e.g. due to a loop), then each of those calls will be
represented by the same stack trace in the tree.</para>
-<para>Note also that tree entry with children in the example satisfies an
+<para>Note also that each tree entry with children in the example satisfies an
invariant: the entry's size is equal to the sum of its children's sizes.
For example, the first entry has size 20,000B, and its children have sizes
10,000B, 8,000B, and 2,000B. In general, this invariant almost always
holds. However, in rare circumstances stack traces can be malformed, in
which case a stack trace can be a sub-trace of another stack trace. This
means that some entries in the tree may not satisfy the invariant -- the
-entry's size will be greater than the sum of its children's sizes. Massif
-can sometimes detect when this happens; if it does, it issues a
-warning:</para>
+entry's size will be greater than the sum of its children's sizes. This is
+not a big problem, but could make the results confusing. Massif can
+sometimes detect when this happens; if it does, it issues a warning:</para>
<screen><![CDATA[
Warning: Malformed stack trace detected. In Massif's output,
Modified: trunk/massif/ms_print.in
===================================================================
--- trunk/massif/ms_print.in 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/ms_print.in 2009-04-27 01:27:58 UTC (rev 9642)
@@ -507,25 +507,20 @@
# Each row represents K bytes, which is 1/graph_y of the peak size
# (and K can be non-integral). When drawing the column for a snapshot,
# in order to fill the slot in row y (where the first row drawn on is
- # row 1) with a half-char (eg. '.'), it must be >= (y - 1/2)*K. In
- # order to fill a row/column spot with a full-char (eg. ':'), it must be
- # >= y*K. For example, if K = 10 bytes, then the values 0, 4, 5, 9, 10,
- # 14, 15, 19, 20, 24, 25, 29, 30 would be drawn like this (showing one
- # per column):
+ # row 1) with a full-char (eg. ':'), it must be >= y*K. For example, if
+ # K = 10 bytes, then the values 0, 4, 5, 9, 10, 14, 15, 19, 20, 24, 25,
+ # 29, 30 would be drawn like this (showing one per column):
#
- # y (y - 1/2) * K y * K
- # - ------------- -----------
- # 30 | ..: 3 (3 - 1/2) * 10 = 25 3 * 10 = 30
- # 20 | ..::::: 2 (2 - 1/2) * 10 = 15 2 * 10 = 20
- # 10 | ..::::::::: 1 (1 - 1/2) * 10 = 5 1 * 10 = 10
+ # y y * K
+ # - -----------
+ # 30 | : 3 3 * 10 = 30
+ # 20 | ::::: 2 2 * 10 = 20
+ # 10 | ::::::::: 1 1 * 10 = 10
# 0 +-------------
- my $peak_full_char = '#';
- my $detailed_full_char = '@';
- my $normal_full_char = ':';
- my $peak_half_char = ',';
- my $detailed_half_char = ',';
- my $normal_half_char = '.';
+ my $peak_char = '#';
+ my $detailed_char = '@';
+ my $normal_char = ':';
# Work out how many bytes each row represents. If the peak size was 0,
# make it 1 so that the Y-axis covers a non-zero range of values.
@@ -534,9 +529,15 @@
if (0 == $end_time ) { $end_time = 1; }
my $K = $peak_mem_total_szB / $graph_y;
+ $x = 0;
+ my $prev_x = 0;
+ my $prev_y_max = 0;
+ my $prev_char = ':';
+
for (my $i = 0; $i < $n_snapshots; $i++) {
# Work out which column this snapshot belongs to.
+ $prev_x = $x;
my $x_pos_frac = ($times[$i] / ($end_time)) * $graph_x;
$x = int($x_pos_frac) + 1; # +1 due to Y-axis
# The final snapshot will spill over into the n+1th column, which
@@ -547,41 +548,49 @@
$x = $graph_x;
}
- # Draw the column if:
- # - it's the peak column, or
- # - it's a detailed column, and we won't overwrite the peak column, or
- # - it's a normal column, and we won't overwrite the peak column or a
- # detailed column.
- my $should_draw_column =
- (($i == $peak_num) or
- ($is_detaileds[$i] and $graph[$x][1] ne $peak_full_char) or
- ($graph[$x][1] ne $peak_full_char and
- $graph[$x][1] ne $detailed_full_char));
+ # If there was a gap between the previous snapshot's column and this
+ # one, we draw a horizontal line in the gap (so long as it doesn't
+ # trash the x-axis). Without this, graphs with a few sparse
+ # snapshots look funny -- as if the memory usage is in temporary
+ # spikes.
+ if ($prev_y_max > 0) {
+ for (my $x2 = $prev_x + 1; $x2 < $x; $x2++) {
+ $graph[$x2][$prev_y_max] = $prev_char;
+ }
+ }
- if ($should_draw_column) {
- # If it's detailed, mark the X-axis. Also choose the full-slot
- # char.
- my ($full_char, $half_char);
- if ($i == $peak_num) {
- $full_char = $peak_full_char;
- $half_char = $peak_half_char;
- } elsif ($is_detaileds[$i]) {
- $full_char = $detailed_full_char;
- $half_char = $detailed_half_char;
- } else {
- $full_char = $normal_full_char;
- $half_char = $normal_half_char;
- }
- # Grow this snapshot bar from bottom to top.
- for ($y = 1; $y <= $graph_y; $y++) {
- if ($mem_total_Bs[$i] >= ($y - 1/2) * $K) {
- $graph[$x][$y] = $half_char;
- }
- if ($mem_total_Bs[$i] >= $y * $K) {
- $graph[$x][$y] = $full_char;
+ # Choose the column char.
+ my $char;
+ if ($i == $peak_num) { $char = $peak_char; }
+ elsif ($is_detaileds[$i]) { $char = $detailed_char; }
+ else { $char = $normal_char; }
+
+ # Grow this snapshot bar from bottom to top.
+ my $y_max = 0;
+ for ($y = 1; $y <= $graph_y; $y++) {
+ if ($mem_total_Bs[$i] >= $y * $K) {
+ # Priority order for chars: peak > detailed > normal
+ my $should_draw_char =
+ (($char eq $peak_char)
+ or
+ ($char eq $detailed_char and
+ $graph[$x][$y] ne $peak_char
+ )
+ or
+ ($char eq $normal_char and
+ $graph[$x][$y] ne $peak_char and
+ $graph[$x][$y] ne $detailed_char
+ )
+ );
+
+ if ($should_draw_char) {
+ $graph[$x][$y] = $char;
}
+ $y_max = $y;
}
}
+ $prev_y_max = $y_max;
+ $prev_char = $char;
}
#-------------------------------------------------------------------------
@@ -669,5 +678,3 @@
##--------------------------------------------------------------------##
##--- end ms_print.in ---##
##--------------------------------------------------------------------##
-
-
Modified: trunk/massif/tests/alloc-fns-A.post.exp
===================================================================
--- trunk/massif/tests/alloc-fns-A.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/alloc-fns-A.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -8,24 +8,24 @@
KB
3.516^ @
| @
- | . @
+ | @
+ | :::::::@
| : @
- | . : @
+ | ::::::::: @
| : : @
- | : : @
+ | ::::::::: : @
| : : : @
- | : : : @
+ | ::::::::: : : @
| : : : : @
| : : : : @
- | . : : : : @
+ | ::::::::: : : : @
| : : : : : @
- | . : : : : : @
+ | ::::::::: : : : : @
| : : : : : : @
- | : : : : : : @
+ | ::::::::: : : : : : @
| : : : : : : : @
- | : : : : : : : @
+ | ::::::::: : : : : : : @
| : : : : : : : : @
- | : : : : : : : : @
0 +----------------------------------------------------------------------->KB
0 3.516
Modified: trunk/massif/tests/alloc-fns-B.post.exp
===================================================================
--- trunk/massif/tests/alloc-fns-B.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/alloc-fns-B.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -8,24 +8,24 @@
KB
3.516^ @
| @
- | . @
+ | @
+ | :::::::@
| : @
- | . : @
+ | ::::::::: @
| : : @
- | : : @
+ | ::::::::: : @
| : : : @
- | : : : @
+ | ::::::::: : : @
| : : : : @
| : : : : @
- | . : : : : @
+ | ::::::::: : : : @
| : : : : : @
- | . : : : : : @
+ | ::::::::: : : : : @
| : : : : : : @
- | : : : : : : @
+ | ::::::::: : : : : : @
| : : : : : : : @
- | : : : : : : : @
+ | ::::::::: : : : : : : @
| : : : : : : : : @
- | : : : : : : : : @
0 +----------------------------------------------------------------------->KB
0 3.516
Modified: trunk/massif/tests/basic.post.exp
===================================================================
--- trunk/massif/tests/basic.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/basic.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -7,25 +7,25 @@
KB
14.34^ #
- | .:#:.
- | .:::#:::.
- | .:::::#:::::.
- | .@::::::#:::::::.
+ | :#:
+ | :::#:::
+ | :::::#:::::
+ | @::::::#:::::::
| ::@::::::#:::::::::
- | .:::@::::::#:::::::::@.
- | .:::::@::::::#:::::::::@::.
- | .:::::::@::::::#:::::::::@::::.
- | ,:::::::::@::::::#:::::::::@::::::.
+ | :::@::::::#:::::::::@
+ | :::::@::::::#:::::::::@::
+ | :::::::@::::::#:::::::::@::::
+ | :::::::::@::::::#:::::::::@::::::
| :@:::::::::@::::::#:::::::::@::::::::
- | .::@:::::::::@::::::#:::::::::@:::::::::,
- | .::::@:::::::::@::::::#:::::::::@:::::::::@:.
- | .::::::@:::::::::@::::::#:::::::::@:::::::::@:::.
- | .::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::.
+ | ::@:::::::::@::::::#:::::::::@:::::::::
+ | ::::@:::::::::@::::::#:::::::::@:::::::::@:
+ | ::::::@:::::::::@::::::#:::::::::@:::::::::@:::
+ | ::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::
| @:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::
- | .:@:::::::::@:::::::::@::::::#:::::::::@:::::::::@::::::::.
- | .:::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@.
- | .:::::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@::.
- | .:::::::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@::::.
+ | :@:::::::::@:::::::::@::::::#:::::::::@:::::::::@::::::::
+ | :::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@
+ | :::::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@::
+ | :::::::@:::::::::@:::::::::@::::::#:::::::::@:::::::::@:::::::::@::::
0 +----------------------------------------------------------------------->KB
0 28.29
Modified: trunk/massif/tests/basic2.post.exp
===================================================================
--- trunk/massif/tests/basic2.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/basic2.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -6,24 +6,24 @@
KB
-14.34^ #
+14.34^ ########
| #
| #
| #
- | # ,
+ | #
+ | @@@@@@@@@@# @@@@@@@@@
| @ # @
| @ # @
| @ # @
- | @ # @
- | , @ # @ @
+ | @ # @ @@@@@@@@
+ | @@@@@@@@@ # @ @
| @ @ # @ @
| @ @ # @ @
| @ @ # @ @
- | @ @ # @ @ ,
- | @ @ # @ @ @
+ | @ @ # @ @ @@@@@@@@
+ | @@@@@@@@@@@@ @ # @ @ @
| @ @ @ # @ @ @
| @ @ @ # @ @ @
- | @ @ @ # @ @ @
| @ @ @ # @ @ @ @
| @ @ @ # @ @ @ @
0 +----------------------------------------------------------------------->KB
Modified: trunk/massif/tests/big-alloc.post.exp
===================================================================
--- trunk/massif/tests/big-alloc.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/big-alloc.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -8,24 +8,24 @@
MB
100.0^ :
| :
+ | @@@@@@@:
| @ :
- | @ :
+ | :::::::@ :
| : @ :
- | : @ :
+ | :::::::: @ :
| : : @ :
- | : : @ :
+ | :::::::: : @ :
| : : : @ :
- | : : : @ :
+ | :::::::: : : @ :
| : : : : @ :
- | : : : : @ :
+ | ::::::::: : : : @ :
| : : : : : @ :
- | : : : : : @ :
+ | :::::::: : : : : @ :
| : : : : : : @ :
- | : : : : : : @ :
+ | :::::::: : : : : : @ :
| : : : : : : : @ :
- | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
| : : : : : : : : @ :
- | : : : : : : : : @ :
0 +----------------------------------------------------------------------->MB
0 100.0
Modified: trunk/massif/tests/custom_alloc.post.exp
===================================================================
--- trunk/massif/tests/custom_alloc.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/custom_alloc.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -6,7 +6,7 @@
B
- 816^ # :
+ 816^ ############ :::::::::::
| # :
| # :
| # :
@@ -16,6 +16,7 @@
| # :
| # :
| # :
+ | @@@@@@ # :::::: :
| @ # : :
| @ # : :
| @ # : :
@@ -25,7 +26,6 @@
| @ # : :
| @ # : :
| @ # : :
- | @ # : :
0 +----------------------------------------------------------------------->KB
0 4.812
Modified: trunk/massif/tests/deep-A.post.exp
===================================================================
--- trunk/massif/tests/deep-A.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/deep-A.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -8,24 +8,24 @@
KB
3.984^ :
| :
+ | @@@@@@@:
| @ :
- | @ :
+ | :::::::@ :
| : @ :
- | : @ :
+ | :::::::: @ :
| : : @ :
- | : : @ :
+ | :::::::: : @ :
| : : : @ :
- | : : : @ :
+ | :::::::: : : @ :
| : : : : @ :
- | : : : : @ :
+ | ::::::::: : : : @ :
| : : : : : @ :
- | : : : : : @ :
+ | :::::::: : : : : @ :
| : : : : : : @ :
- | : : : : : : @ :
+ | :::::::: : : : : : @ :
| : : : : : : : @ :
- | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
| : : : : : : : : @ :
- | : : : : : : : : @ :
0 +----------------------------------------------------------------------->KB
0 3.984
Modified: trunk/massif/tests/deep-B.post.exp
===================================================================
--- trunk/massif/tests/deep-B.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/deep-B.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -8,24 +8,24 @@
KB
3.984^ :
| :
+ | @@@@@@@:
| @ :
- | @ :
+ | :::::::@ :
| : @ :
- | : @ :
+ | :::::::: @ :
| : : @ :
- | : : @ :
+ | :::::::: : @ :
| : : : @ :
- | : : : @ :
+ | :::::::: : : @ :
| : : : : @ :
- | : : : : @ :
+ | ::::::::: : : : @ :
| : : : : : @ :
- | : : : : : @ :
+ | :::::::: : : : : @ :
| : : : : : : @ :
- | : : : : : : @ :
+ | :::::::: : : : : : @ :
| : : : : : : : @ :
- | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
| : : : : : : : : @ :
- | : : : : : : : : @ :
0 +----------------------------------------------------------------------->KB
0 3.984
Modified: trunk/massif/tests/deep-C.post.exp
===================================================================
--- trunk/massif/tests/deep-C.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/deep-C.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -8,24 +8,24 @@
KB
3.984^ :
| :
+ | @@@@@@@:
| @ :
- | @ :
+ | :::::::@ :
| : @ :
- | : @ :
+ | :::::::: @ :
| : : @ :
- | : : @ :
+ | :::::::: : @ :
| : : : @ :
- | : : : @ :
+ | :::::::: : : @ :
| : : : : @ :
- | : : : : @ :
+ | ::::::::: : : : @ :
| : : : : : @ :
- | : : : : : @ :
+ | :::::::: : : : : @ :
| : : : : : : @ :
- | : : : : : : @ :
+ | :::::::: : : : : : @ :
| : : : : : : : @ :
- | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
| : : : : : : : : @ :
- | : : : : : : : : @ :
0 +----------------------------------------------------------------------->KB
0 3.984
Modified: trunk/massif/tests/deep-D.post.exp
===================================================================
--- trunk/massif/tests/deep-D.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/deep-D.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -8,24 +8,24 @@
KB
3.984^ :
| :
+ | @@@@@@@:
| @ :
- | @ :
+ | :::::::@ :
| : @ :
- | : @ :
+ | :::::::: @ :
| : : @ :
- | : : @ :
+ | :::::::: : @ :
| : : : @ :
- | : : : @ :
+ | :::::::: : : @ :
| : : : : @ :
- | : : : : @ :
+ | ::::::::: : : : @ :
| : : : : : @ :
- | : : : : : @ :
+ | :::::::: : : : : @ :
| : : : : : : @ :
- | : : : : : : @ :
+ | :::::::: : : : : : @ :
| : : : : : : : @ :
- | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
| : : : : : : : : @ :
- | : : : : : : : : @ :
0 +----------------------------------------------------------------------->KB
0 3.984
Modified: trunk/massif/tests/ignored.post.exp
===================================================================
--- trunk/massif/tests/ignored.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/ignored.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -16,6 +16,7 @@
| #
| #
| #
+ | :::::::::::::::::::::::::::::::::::#
| : #
| : #
| : #
@@ -25,7 +26,6 @@
| : #
| : #
| : #
- | : #
0 +----------------------------------------------------------------------->B
0 800
Modified: trunk/massif/tests/ignoring.post.exp
===================================================================
--- trunk/massif/tests/ignoring.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/ignoring.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -6,16 +6,16 @@
KB
-1.008^#
+1.008^##
|#
|#
|#
|#
+ |# ::::::::::::@:::@:::@:::@:::@::::@:::::::@:::::::@:::::::@::::
|# ::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# ::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# ::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# ::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
- |# ::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# @:::@:::::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# @:::@:::::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
|# @:::@:::::::::::::::@:::@:::@:::@:::@: ::@:::::::@:::::::@:::::::@::::
Modified: trunk/massif/tests/insig.post.exp
===================================================================
--- trunk/massif/tests/insig.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/insig.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -6,10 +6,11 @@
KB
-19.23^ .:
- | ..:@::
- | .,::::@::
- | .:::@::::@::
+19.23^ :
+ | :@::
+ | ::::@::
+ | :::@::::@::
+ | ::::::@::::@::
| : ::::@::::@::
| : ::::@::::@::
| : ::::@::::@::
@@ -25,7 +26,6 @@
| : ::::@::::@::
| : ::::@::::@::
| : ::::@::::@::
- | : ::::@::::@::
0 +----------------------------------------------------------------------->KB
0 19.23
Modified: trunk/massif/tests/long-names.post.exp
===================================================================
--- trunk/massif/tests/long-names.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/long-names.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -13,19 +13,19 @@
| :
| :
| :
+ | @@@@@@@@@@@@@@@@@@@@@@@:
| @ :
| @ :
| @ :
| @ :
| @ :
| @ :
- | . @ :
+ | ::::::::::::::::::::::::@ :
| : @ :
| : @ :
| : @ :
| : @ :
| : @ :
- | : @ :
0 +----------------------------------------------------------------------->KB
0 5.859
Modified: trunk/massif/tests/long-time.post.exp
===================================================================
--- trunk/massif/tests/long-time.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/long-time.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -9,17 +9,17 @@
2.193^#: : : : @ : :
|#: : : : @ : :
|#: : : : @ : :
- |#: :. :. :. @. :, .
+ |#: : : : @ : :
|#: :: :: :: @: :@ :
|#: :: :: :: @: :@ :
|#: :: :: :: @: :@ :
|#: :: :: :: @: :@ :
|#: :: :: :: @: :@ :
|#: :: :: :: @: :@ :
- |#: :: :: :: @: :@ : :. :. :. :. :, :. :. . :. :, :. :
- |#: :: :: :: @: :@ : :: :: :: :: :@ :: :: : :: :@ :: :
- |#:...,..............:: :: :: @: :@ : ::.::,::.:: :@ :: :: ,: :: :@ :: :
- |#::::@:::::::::::::::: :: :: @: :@ : :::::@:::::.:@.::.::.@:.::.:@.::.:
+ |#: :: :: :: @: :@ : : : : : : : : : : : : :
+ |#: :: :: :: @: :@ : :: :: :: :: :@ :: :: :: :: :@ :: :
+ |#: :: :: :: @: :@ : :: :: :: :: :@ :: :: :: :: :@ :: :
+ |#::::@:::::::::::::::: :: :: @: :@ : :::::@::::: :@ :: :: @: :: :@ :: :
|#::::@:::::::::::::::: :: :: @: :@ : :::::@:::::::@:::::::@::::::@:::::
|#::::@:::::::::::::::: :: :: @: :@ : :::::@:::::::@:::::::@::::::@:::::
|#::::@:::::::::::::::: :: :: @: :@ : :::::@:::::::@:::::::@::::::@:::::
Modified: trunk/massif/tests/new-cpp.post.exp
===================================================================
--- trunk/massif/tests/new-cpp.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/new-cpp.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -6,26 +6,26 @@
KB
-11.75^ #
+11.75^ ###########
| #
| #
- | . #
+ | #
+ | :::::::#
| : #
| : #
- | : #
+ | ::::::: # ::::::::::::
| : : # :
| : : # :
| : : # :
| : : # :
| : : # :
| : : # :
- | . : : # : .
+ | ::::::::::::: : # : ::::::
| : : : # : :
| : : : # : :
- | : : : # : :
+ | : : : # : : ::::::
| : : : # : : :
| : : : # : : :
- | : : : # : : :
0 +----------------------------------------------------------------------->KB
0 23.50
Modified: trunk/massif/tests/overloaded-new.post.exp
===================================================================
--- trunk/massif/tests/overloaded-new.post.exp 2009-04-26 22:23:20 UTC (rev 9641)
+++ trunk/massif/tests/overloaded-new.post.exp 2009-04-27 01:27:58 UTC (rev 9642)
@@ -6,26 +6,26 @@
KB
-11.75^ #
+11.75^ ###########
| #
| #
- | ...
[truncated message content] |