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: Greg P. <gp...@ap...> - 2009-04-17 23:14:16
|
On Apr 17, 2009, at 2:49 PM, Nicholas Nethercote wrote: > Both the kernel (xnu) and the Libc are open source: > http://www.opensource.apple.com/darwinsource/10.5.6/ Note that some parts of the kernel and Libc are not open-source, but in general everything you need for Valgrind is there. Note that most of Libc's syscall functions are trivial wrappers around the kernel syscall. The wrappers are generated by macros and are hard to find. The best bet is to disassemble the Libc function first; if it does nothing except syscall/sysenter and cerror (which sets errno), then you should go straight to xnu's source. >> ../tests/sys_mman.h:25: error: 'MAP_ANONYMOUS' undeclared (first >> use in this >> function) That's spelled MAP_ANON on Mac OS X. (Also, make sure you set either MAP_PRIVATE or MAP_SHARED; if you set neither or both, mmap() may return an error.) -- Greg Parker gp...@ap... Runtime Wrangler |
|
From: Nicholas N. <n.n...@gm...> - 2009-04-17 21:50:03
|
On Fri, Apr 17, 2009 at 10:52 PM, Filipe Cabecinhas <fi...@gm...> wrote: >> >> It would be hard to do a less general suppression. Before we do that, >> I'd rather know why we're getting the error, whether it's genuine or a >> false positive, etc. > > I submitted a bug report to Apple... But I'm not expecting them to fix it. > How could you see if the error is genuine or a false positive without access > to the source? By disassembling and looking at the output? :-) Both the kernel (xnu) and the Libc are open source: http://www.opensource.apple.com/darwinsource/10.5.6/ > I implemented two brand new Mac OS X system calls... I couldn't believe they > had implemented sem_init and sem_destroy when I first saw it! It must have > been in Leopard, for POSIX compliance... (But we still have no manpages for > the functions). > > Patch: > http://web.ist.utl.pt/~filipe.cabecinhas/patches/valgrind-sem_init_destroy.patch > > The semlimit test now runs successefully. Great, thanks! I'll commit it next week. > But I had to test it manually... > make regtest blows up: > > ------------------------------------------------------ > make bigcode bz2 fbench ffbench heap sarp tinycc > gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I../include -I../include -Winline -Wall > -Wshadow -g -O -arch i386 -Wno-long-long -Wno-pointer-sign > -Wdeclaration-after-statement -fno-stack-protector -MT bigcode.o -MD -MP -MF > .deps/bigcode.Tpo -c -o bigcode.o bigcode.c > In file included from bigcode.c:13: > ../tests/sys_mman.h: In function 'get_unmapped_page': > ../tests/sys_mman.h:25: error: 'MAP_ANONYMOUS' undeclared (first use in this > function) > ../tests/sys_mman.h:25: error: (Each undeclared identifier is reported only > once > ../tests/sys_mman.h:25: error: for each function it appears in.) > bigcode.c: In function 'main': > bigcode.c:40: error: 'MAP_ANONYMOUS' undeclared (first use in this function) > make[3]: *** [bigcode.o] Error 1 > ------------------------------------------------------ Are you up-to-date? If so, have you rerun autogen.sh lately? > Also, should I try to create a simple test for csops/F_ADDSIGS, when I have > the time? Sure, it can't hurt. I thought about adding your previous test program but it needed root privileges to run, right? There's also memcheck/tests/darwin/scalar.c, which is intended to test all the arguments to all syscalls for undefinedness (at least, most of them). If you can understand how it works, additions to it for the new syscalls (or any other syscalls) would be welcome. Nick |
|
From: Josef W. <Jos...@gm...> - 2009-04-17 19:26:11
|
Hi Dominic, On Thursday 16 April 2009, Dominic Account wrote: > I am currently trying to extend CacheGrind to support multi-core cache > simulation > ( MESI protocol, 1:1 thread/L1 cache mapping come to my mind ). Cool. To get realistic behavior, I suppose you track a simulated time somehow and try to influence the scheduling of threads, perhaps also with reducing the time slice used in Valgrind for switching between threads? > However, I have stumbled over the event merging mechanism. I suspect > the way events > are currently merged, results into more reads being reported then writes. > > I think this is the case because writes (Dw-events) get merged with > reads (Dr-events) to > modify-events (Dm) which are only handled by read-handlers (e.g. > "log_0I_1Dr_cache_access"). Yes. As you note, because of the cache model, it does not really matter for miss ratios (reads and writes produce the same result regarding cache state). It was so since the early times of Cachegrind, and actually, I can only assume the reasoning: perhaps the results matched better with reality. AFAIK, Nick did quite some investigations then... Anyway, Callgrind uses the same model, and it interpretes "modify" as a write, which I need in one optional extended model, in which further L2 events are produced depending on the need of the writeback of a dirty line. Hmm.. the modify->write is wrong in a similar way. The better solution really is to either call into the simulator with 2 events, or have an handler for a modify event (as you suggest in the other mail; the latter would be better regarding performance of the simulation). > (2) Another suggestion: > > "cg_main.c" > > "Ist_Dirty"-opcodes are limited in dataSize to 16 bytes. I would suggest to > limit the data size to twice the configured cache line size instead. If you do that, accesses can cover 3 cache lines, which the simulation code is not prepared for. BTW, there are x86 instructions with large data read/writes, e.g. pushf/popf. Cheers, Josef |
|
From: <sv...@va...> - 2009-04-17 17:51:38
|
Author: bart Date: 2009-04-17 18:51:31 +0100 (Fri, 17 Apr 2009) New Revision: 9573 Log: Compiles now on older Linux distributions too. Modified: trunk/drd/tests/pth_barrier_race.c Modified: trunk/drd/tests/pth_barrier_race.c =================================================================== --- trunk/drd/tests/pth_barrier_race.c 2009-04-17 07:14:29 UTC (rev 9572) +++ trunk/drd/tests/pth_barrier_race.c 2009-04-17 17:51:31 UTC (rev 9573) @@ -10,6 +10,8 @@ */ +#define _GNU_SOURCE + #include <pthread.h> #include <stdlib.h> #include <unistd.h> |
|
From: Nicholas N. <n.n...@gm...> - 2009-04-17 17:42:35
|
Nightly build on ocean32 ( Ubuntu 8.10, Intel x86-64 (32-bit only) ) started at 2009-04-18 03:00:01 EST
Results differ from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 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)
=================================================
== Results from 24 hours ago ==
=================================================
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 445 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)
=================================================
== Difference between 24 hours ago and now ==
=================================================
*** old.short Sat Apr 18 03:22:58 2009
--- new.short Sat Apr 18 03:42:27 2009
***************
*** 8,10 ****
! == 445 tests, 7 stderr failures, 2 stdout failures, 0 post failures ==
memcheck/tests/linux/stack_switch (stderr)
--- 8,10 ----
! == 446 tests, 7 stderr failures, 2 stdout failures, 0 post failures ==
memcheck/tests/linux/stack_switch (stderr)
=================================================
./valgrind/memcheck/tests/linux/stack_switch.stderr.diff
=================================================
--- stack_switch.stderr.exp 2009-04-18 03:24:20.000000000 +1000
+++ stack_switch.stderr.out 2009-04-18 03:40:33.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-18 03:24:25.000000000 +1000
+++ origin1-yes.stderr.out 2009-04-18 03:40:50.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.8.90.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-18 03:24:25.000000000 +1000
+++ origin5-bz2.stderr.out 2009-04-18 03:40:53.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-18 03:24:25.000000000 +1000
+++ origin5-bz2.stderr.out 2009-04-18 03:40:53.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-18 03:24:25.000000000 +1000
+++ origin5-bz2.stderr.out 2009-04-18 03:40:53.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-18 03:25:28.000000000 +1000
+++ mremap2.stdout.out 2009-04-18 03:41:55.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
-..................................................
+XXXXXXXXXXXXXXXXXXXXX.............................
..................................................
-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
-..................................................
+XXXXXXXXXXXXXXXXXXXXX.............................
..................................................
-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-18 03:25:28.000000000 +1000
+++ mremap2.stdout.out 2009-04-18 03:41:55.000000000 +1000
@@ -176,49 +176,49 @@
maymv 1 fixed 0 newsz 21 dstpo 0 dst 0x........ -> 0x........ (== other)
XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXX.............................
..................................................
maymv 1 fixed 0 newsz 21 dstpo 1 dst 0x........ -> 0x........ (== other)
XXXXXXXXX...............................XXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-..................................................
+XXXXXXXXXXXXXXXXXXXXX.............................
..................................................
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-18 03:25:28.000000000 +1000
+++ mremap2.stdout.out 2009-04-18 03:41:55.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
-..................................................
+XXXXXXXXXXXXXXXXXXXXX.............................
..................................................
-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
-..................................................
+XXXXXXXXXXXXXXXXXXXXX.............................
..................................................
-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-18 03:25:35.000000000 +1000
+++ shell.stderr.out 2009-04-18 03:42:10.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-18 03:25:35.000000000 +1000
+++ shell.stderr.out 2009-04-18 03:42:10.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-18 03:25:35.000000000 +1000
+++ shell.stdout.out 2009-04-18 03:42:10.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-18 03:25:35.000000000 +1000
+++ shell_valid1.stderr.out 2009-04-18 03:42:10.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-18 03:25:35.000000000 +1000
+++ shell_valid2.stderr.out 2009-04-18 03:42:10.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-18 03:25:35.000000000 +1000
+++ shell_valid3.stderr.out 2009-04-18 03:42:10.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-17 16:28:52
|
Nightly build on ocean ( Ubuntu 8.10, Intel x86-64 ) started at 2009-04-18 02:00:01 EST Results differ from 24 hours ago Checking out valgrind source tree ... failed Last 20 lines of verbose log follow echo A valgrind/coregrind/pub_core_vki.h A valgrind/coregrind/pub_core_hashtable.h A valgrind/coregrind/pub_core_options.h A valgrind/coregrind/pub_core_libcassert.h A valgrind/coregrind/pub_core_errormgr.h A valgrind/coregrind/m_xarray.c A valgrind/coregrind/m_libcsignal.c A valgrind/coregrind/m_threadstate.c A valgrind/coregrind/pub_core_aspacemgr.h A valgrind/coregrind/m_libcfile.c A valgrind/coregrind/pub_core_cpuid.h A valgrind/coregrind/Makefile.am A valgrind/coregrind/pub_core_threadstate.h A valgrind/coregrind/pub_core_mallocfree.h A valgrind/coregrind/pub_core_oset.h A valgrind/Makefile.install.am U valgrind Fetching external item into 'valgrind/VEX' svn: Can't connect to host 'svn.valgrind.org': Connection timed out ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 482 tests, 0 stderr failures, 1 stdout failure, 0 post failures == none/tests/linux/mremap2 (stdout) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Sat Apr 18 02:18:27 2009 --- new.short Sat Apr 18 02:28:41 2009 *************** *** 1,11 **** ! Checking out valgrind source tree ... done ! Configuring valgrind ... done ! Building valgrind ... done ! Running regression tests ... failed ! Regression test results follow ! ! == 482 tests, 0 stderr failures, 1 stdout failure, 0 post failures == ! none/tests/linux/mremap2 (stdout) --- 1,24 ---- ! Checking out valgrind source tree ... failed ! Last 20 lines of verbose log follow echo ! A valgrind/coregrind/pub_core_vki.h ! A valgrind/coregrind/pub_core_hashtable.h ! A valgrind/coregrind/pub_core_options.h ! A valgrind/coregrind/pub_core_libcassert.h ! A valgrind/coregrind/pub_core_errormgr.h ! A valgrind/coregrind/m_xarray.c ! A valgrind/coregrind/m_libcsignal.c ! A valgrind/coregrind/m_threadstate.c ! A valgrind/coregrind/pub_core_aspacemgr.h ! A valgrind/coregrind/m_libcfile.c ! A valgrind/coregrind/pub_core_cpuid.h ! A valgrind/coregrind/Makefile.am ! A valgrind/coregrind/pub_core_threadstate.h ! A valgrind/coregrind/pub_core_mallocfree.h ! A valgrind/coregrind/pub_core_oset.h ! A valgrind/Makefile.install.am ! U valgrind + Fetching external item into 'valgrind/VEX' + svn: Can't connect to host 'svn.valgrind.org': Connection timed out Congratulations, all tests passed! |
|
From: Filipe C. <fi...@gm...> - 2009-04-17 12:52:28
|
Hi, Nicholas Nethercote wrote: > > It would be hard to do a less general suppression. Before we do that, > I'd rather know why we're getting the error, whether it's genuine or a > false positive, etc. > > Nick I submitted a bug report to Apple... But I'm not expecting them to fix it. How could you see if the error is genuine or a false positive without access to the source? By disassembling and looking at the output? :-) I implemented two brand new Mac OS X system calls... I couldn't believe they had implemented sem_init and sem_destroy when I first saw it! It must have been in Leopard, for POSIX compliance... (But we still have no manpages for the functions). Patch: http://web.ist.utl.pt/~filipe.cabecinhas/patches/valgrind-sem_init_destroy.patch The semlimit test now runs successefully. But I had to test it manually... make regtest blows up: ------------------------------------------------------ make bigcode bz2 fbench ffbench heap sarp tinycc gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I../include -I../include -Winline -Wall -Wshadow -g -O -arch i386 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT bigcode.o -MD -MP -MF .deps/bigcode.Tpo -c -o bigcode.o bigcode.c In file included from bigcode.c:13: ../tests/sys_mman.h: In function 'get_unmapped_page': ../tests/sys_mman.h:25: error: 'MAP_ANONYMOUS' undeclared (first use in this function) ../tests/sys_mman.h:25: error: (Each undeclared identifier is reported only once ../tests/sys_mman.h:25: error: for each function it appears in.) bigcode.c: In function 'main': bigcode.c:40: error: 'MAP_ANONYMOUS' undeclared (first use in this function) make[3]: *** [bigcode.o] Error 1 ------------------------------------------------------ Also, should I try to create a simple test for csops/F_ADDSIGS, when I have the time? Regards, F |
|
From: Dominic A. <zer...@go...> - 2009-04-17 10:07:40
|
Hi,
I have verified the read/write-counting in CacheGrind. It is not correct!
"test.c" is a small test case. The loop in the "test"-function contains
the "80483b3: subl $0x1,-0x4(%ebp)" statement which causes a
read and write. Due to the merging in "addEvent_Dw" and the conversion
into a Dm-event which is treated like a Dr-event the write counter
is wrong:
==8584== D refs: 400,060,588 (300,043,577 rd + 100,017,011 wr)
vs.
==10891== D refs: 500,062,749 (300,043,577 rd + 200,019,172 wr)
(disabled merging in "addEvent_Dw" = quick fix)
If you look at the assembly you will see that the loop has a 3/2
read/write ratio.
Again, if you look at the D-refs you will see that the "fixed" -
CacheGrind reports
the correct ratio.
-----------------------------------------------------------------------------
"test" function disassembly -----------------------------------------
-----------------------------------------------------------------------------
08048394 <test>:
8048394: 55 push %ebp
8048395: 89 e5 mov %esp,%ebp
8048397: 83 ec 10 sub $0x10,%esp
804839a: c7 45 fc 7f 96 98 00 movl $0x98967f,-0x4(%ebp)
80483a1: c7 45 f8 00 00 00 00 movl $0x0,-0x8(%ebp)
80483a8: eb 0d jmp 80483b7 <test+0x23>
80483aa: 8b 45 f8 mov -0x8(%ebp),%eax
80483ad: 83 c0 02 add $0x2,%eax
80483b0: 89 45 f8 mov %eax,-0x8(%ebp)
80483b3: 83 6d fc 01 subl $0x1,-0x4(%ebp)
80483b7: 83 7d fc 00 cmpl $0x0,-0x4(%ebp)
80483bb: 75 ed jne 80483aa <test+0x16>
80483bd: c9 leave
80483be: c3 ret
compiled with "gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4)"
-----------------------------------------------------------------------------
test.c ----------------------------------------------------------------------
-----------------------------------------------------------------------------
#include <stdio.h>
void test()
{
unsigned long i = 9999999L;
volatile int x = 0;
while(i>0) {
x+=2;
i--;
}
}
int main()
{
int i;
for(i=0;i<10;i++) test();
}
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
modified "addEvent_Dw" ---------------------------------------------
-----------------------------------------------------------------------------
/* Is it possible to merge this write with the preceding read? */
/* Disable this code, because Dm events are treated like reads later on:
lastEvt = &cgs->events[cgs->events_used-1];
if (cgs->events_used > 0
&& lastEvt->tag == Ev_Dr
&& lastEvt->Ev.Dr.szB == datasize
&& lastEvt->inode == inode
&& eqIRAtom(lastEvt->Ev.Dr.ea, ea))
{
if (inode->locked == False) {
VG_(printf)("write merges with read without lock prefix:\n");
show_debug_info(inode->instr_addr);
}
lastEvt->tag = Ev_Dm;
return;
}
*/
|
|
From: <sv...@va...> - 2009-04-17 07:14:33
|
Author: njn
Date: 2009-04-17 08:14:29 +0100 (Fri, 17 Apr 2009)
New Revision: 9572
Log:
Merge r9571 (get faultstatus building again) from the DARWIN branch.
Modified:
trunk/none/tests/x86/faultstatus.c
Modified: trunk/none/tests/x86/faultstatus.c
===================================================================
--- trunk/none/tests/x86/faultstatus.c 2009-04-17 07:07:24 UTC (rev 9571)
+++ trunk/none/tests/x86/faultstatus.c 2009-04-17 07:14:29 UTC (rev 9572)
@@ -6,8 +6,9 @@
#include <stdlib.h>
#include <fcntl.h>
#include <setjmp.h>
+#include <unistd.h>
+#include "tests/asm.h"
#include "tests/sys_mman.h"
-#include <unistd.h>
struct test {
void (*test)(void);
@@ -76,7 +77,7 @@
extern char test1_ill;
static void test1()
{
- asm volatile("test1_ill: ud2");
+ asm volatile(VG_SYM(test1_ill) ": ud2");
}
static void test2()
|
|
From: <sv...@va...> - 2009-04-17 07:07:29
|
Author: njn
Date: 2009-04-17 08:07:24 +0100 (Fri, 17 Apr 2009)
New Revision: 9571
Log:
Make faultstatus compile (it still doesn't pass on Darwin, though).
Modified:
branches/DARWIN/none/tests/x86/Makefile.am
branches/DARWIN/none/tests/x86/faultstatus.c
Modified: branches/DARWIN/none/tests/x86/Makefile.am
===================================================================
--- branches/DARWIN/none/tests/x86/Makefile.am 2009-04-17 07:01:24 UTC (rev 9570)
+++ branches/DARWIN/none/tests/x86/Makefile.am 2009-04-17 07:07:24 UTC (rev 9571)
@@ -66,6 +66,7 @@
bug152818-x86 \
cmpxchg8b \
cse_fail \
+ faultstatus \
fcmovnu \
fpu_lazy_eflags \
fxtract \
@@ -89,8 +90,7 @@
# be moved into x86-linux/.
if ! VGCONF_OS_IS_DARWIN
check_PROGRAMS += \
- cpuid \
- faultstatus
+ cpuid
endif
AM_CFLAGS += @FLAG_M32@ $(FLAG_MMMX) $(FLAG_MSSE)
Modified: branches/DARWIN/none/tests/x86/faultstatus.c
===================================================================
--- branches/DARWIN/none/tests/x86/faultstatus.c 2009-04-17 07:01:24 UTC (rev 9570)
+++ branches/DARWIN/none/tests/x86/faultstatus.c 2009-04-17 07:07:24 UTC (rev 9571)
@@ -6,8 +6,9 @@
#include <stdlib.h>
#include <fcntl.h>
#include <setjmp.h>
+#include <unistd.h>
+#include "tests/asm.h"
#include "tests/sys_mman.h"
-#include <unistd.h>
struct test {
void (*test)(void);
@@ -76,7 +77,7 @@
extern char test1_ill;
static void test1()
{
- asm volatile("test1_ill: ud2");
+ asm volatile(VG_SYM(test1_ill) ": ud2");
}
static void test2()
|
|
From: <sv...@va...> - 2009-04-17 07:01:28
|
Author: njn Date: 2009-04-17 08:01:24 +0100 (Fri, 17 Apr 2009) New Revision: 9570 Log: Merge r9569 (move with-space to linux/) from the trunk. Added: branches/DARWIN/memcheck/tests/linux/with-space.stderr.exp branches/DARWIN/memcheck/tests/linux/with-space.stdout.exp branches/DARWIN/memcheck/tests/linux/with-space.vgtest Removed: branches/DARWIN/memcheck/tests/with-space.stderr.exp branches/DARWIN/memcheck/tests/with-space.stdout.exp branches/DARWIN/memcheck/tests/with-space.vgtest Modified: branches/DARWIN/memcheck/tests/Makefile.am branches/DARWIN/memcheck/tests/linux/Makefile.am Modified: branches/DARWIN/memcheck/tests/Makefile.am =================================================================== --- branches/DARWIN/memcheck/tests/Makefile.am 2009-04-17 06:52:10 UTC (rev 9569) +++ branches/DARWIN/memcheck/tests/Makefile.am 2009-04-17 07:01:24 UTC (rev 9570) @@ -163,7 +163,6 @@ vcpu_fbench.stdout.exp vcpu_fbench.stderr.exp vcpu_fbench.vgtest \ vcpu_fnfns.stdout.exp vcpu_fnfns.stdout.exp-glibc28-amd64 \ vcpu_fnfns.stderr.exp vcpu_fnfns.vgtest \ - with-space.stderr.exp with-space.stdout.exp with-space.vgtest \ wrap1.vgtest wrap1.stdout.exp wrap1.stderr.exp \ wrap2.vgtest wrap2.stdout.exp wrap2.stderr.exp \ wrap3.vgtest wrap3.stdout.exp wrap3.stderr.exp \ Modified: branches/DARWIN/memcheck/tests/linux/Makefile.am =================================================================== --- branches/DARWIN/memcheck/tests/linux/Makefile.am 2009-04-17 06:52:10 UTC (rev 9569) +++ branches/DARWIN/memcheck/tests/linux/Makefile.am 2009-04-17 07:01:24 UTC (rev 9570) @@ -7,7 +7,8 @@ brk.stderr.exp brk.vgtest \ capget capget.stderr.exp \ stack_switch.stderr.exp stack_switch.vgtest \ - timerfd-syscall timerfd-syscall.stderr.exp + timerfd-syscall timerfd-syscall.stderr.exp \ + with-space.stderr.exp with-space.stdout.exp with-space.vgtest check_PROGRAMS = \ brk \ Copied: branches/DARWIN/memcheck/tests/linux/with-space.stderr.exp (from rev 9569, trunk/memcheck/tests/linux/with-space.stderr.exp) =================================================================== --- branches/DARWIN/memcheck/tests/linux/with-space.stderr.exp (rev 0) +++ branches/DARWIN/memcheck/tests/linux/with-space.stderr.exp 2009-04-17 07:01:24 UTC (rev 9570) @@ -0,0 +1,2 @@ +Conditional jump or move depends on uninitialised value(s) + at 0x........: main (manuel1.c:7) Copied: branches/DARWIN/memcheck/tests/linux/with-space.stdout.exp (from rev 9569, trunk/memcheck/tests/linux/with-space.stdout.exp) =================================================================== --- branches/DARWIN/memcheck/tests/linux/with-space.stdout.exp (rev 0) +++ branches/DARWIN/memcheck/tests/linux/with-space.stdout.exp 2009-04-17 07:01:24 UTC (rev 9570) @@ -0,0 +1 @@ +x = 88 Copied: branches/DARWIN/memcheck/tests/linux/with-space.vgtest (from rev 9569, trunk/memcheck/tests/linux/with-space.vgtest) =================================================================== --- branches/DARWIN/memcheck/tests/linux/with-space.vgtest (rev 0) +++ branches/DARWIN/memcheck/tests/linux/with-space.vgtest 2009-04-17 07:01:24 UTC (rev 9570) @@ -0,0 +1,14 @@ +# Use the "prereq" command to copy manuel1 to a filename containing a space. +# This used to not work properly, because the debug info would not be read +# correctly for filenames containing spaces (bug #88678). +# +# Nb: we only run this test on Linux. This is because on Darwin you can't +# easily rename an executable with a .dSYM -- the original executable name +# gets baked into the .dSYM, so renaming the .dSYM as well isn't enough, you +# have to modify the contents of the .dSYM. Another idea would be to avoid +# the renaming in the first place by just using 'with space' as the +# filename, but automake doesn't seem to like files containing spaces. +prereq: cp ../manuel1 'with space' +prog: 'with space' +vgopts: -q +cleanup: rm 'with space' Deleted: branches/DARWIN/memcheck/tests/with-space.stderr.exp =================================================================== --- branches/DARWIN/memcheck/tests/with-space.stderr.exp 2009-04-17 06:52:10 UTC (rev 9569) +++ branches/DARWIN/memcheck/tests/with-space.stderr.exp 2009-04-17 07:01:24 UTC (rev 9570) @@ -1,2 +0,0 @@ -Conditional jump or move depends on uninitialised value(s) - at 0x........: main (manuel1.c:7) Deleted: branches/DARWIN/memcheck/tests/with-space.stdout.exp =================================================================== --- branches/DARWIN/memcheck/tests/with-space.stdout.exp 2009-04-17 06:52:10 UTC (rev 9569) +++ branches/DARWIN/memcheck/tests/with-space.stdout.exp 2009-04-17 07:01:24 UTC (rev 9570) @@ -1 +0,0 @@ -x = 88 Deleted: branches/DARWIN/memcheck/tests/with-space.vgtest =================================================================== --- branches/DARWIN/memcheck/tests/with-space.vgtest 2009-04-17 06:52:10 UTC (rev 9569) +++ branches/DARWIN/memcheck/tests/with-space.vgtest 2009-04-17 07:01:24 UTC (rev 9570) @@ -1,7 +0,0 @@ -# Use the "prereq" command to copy manuel1 to a filename containing a space. -# This used to not work properly, because the debug info would not be read -# correctly for filenames containing spaces (bug #88678). -prereq: cp manuel1 'with space' -prog: 'with space' -vgopts: -q -cleanup: rm 'with space' |
|
From: <sv...@va...> - 2009-04-17 06:52:14
|
Author: njn Date: 2009-04-17 07:52:10 +0100 (Fri, 17 Apr 2009) New Revision: 9569 Log: Move with-space to linux/, because it's hard to replicate on Darwin. Added: trunk/memcheck/tests/linux/with-space.stderr.exp trunk/memcheck/tests/linux/with-space.stdout.exp trunk/memcheck/tests/linux/with-space.vgtest Removed: trunk/memcheck/tests/with-space.stderr.exp trunk/memcheck/tests/with-space.stdout.exp trunk/memcheck/tests/with-space.vgtest Modified: trunk/memcheck/tests/Makefile.am trunk/memcheck/tests/linux/Makefile.am Modified: trunk/memcheck/tests/Makefile.am =================================================================== --- trunk/memcheck/tests/Makefile.am 2009-04-17 06:51:43 UTC (rev 9568) +++ trunk/memcheck/tests/Makefile.am 2009-04-17 06:52:10 UTC (rev 9569) @@ -160,7 +160,6 @@ vcpu_fbench.stdout.exp vcpu_fbench.stderr.exp vcpu_fbench.vgtest \ vcpu_fnfns.stdout.exp vcpu_fnfns.stdout.exp-glibc28-amd64 \ vcpu_fnfns.stderr.exp vcpu_fnfns.vgtest \ - with-space.stderr.exp with-space.stdout.exp with-space.vgtest \ wrap1.vgtest wrap1.stdout.exp wrap1.stderr.exp \ wrap2.vgtest wrap2.stdout.exp wrap2.stderr.exp \ wrap3.vgtest wrap3.stdout.exp wrap3.stderr.exp \ Modified: trunk/memcheck/tests/linux/Makefile.am =================================================================== --- trunk/memcheck/tests/linux/Makefile.am 2009-04-17 06:51:43 UTC (rev 9568) +++ trunk/memcheck/tests/linux/Makefile.am 2009-04-17 06:52:10 UTC (rev 9569) @@ -7,7 +7,8 @@ brk.stderr.exp brk.vgtest \ capget capget.stderr.exp \ stack_switch.stderr.exp stack_switch.vgtest \ - timerfd-syscall timerfd-syscall.stderr.exp + timerfd-syscall timerfd-syscall.stderr.exp \ + with-space.stderr.exp with-space.stdout.exp with-space.vgtest check_PROGRAMS = \ brk \ Copied: trunk/memcheck/tests/linux/with-space.stderr.exp (from rev 9566, trunk/memcheck/tests/with-space.stderr.exp) =================================================================== --- trunk/memcheck/tests/linux/with-space.stderr.exp (rev 0) +++ trunk/memcheck/tests/linux/with-space.stderr.exp 2009-04-17 06:52:10 UTC (rev 9569) @@ -0,0 +1,2 @@ +Conditional jump or move depends on uninitialised value(s) + at 0x........: main (manuel1.c:7) Property changes on: trunk/memcheck/tests/linux/with-space.stderr.exp ___________________________________________________________________ Name: svn:mergeinfo + Copied: trunk/memcheck/tests/linux/with-space.stdout.exp (from rev 9566, trunk/memcheck/tests/with-space.stdout.exp) =================================================================== --- trunk/memcheck/tests/linux/with-space.stdout.exp (rev 0) +++ trunk/memcheck/tests/linux/with-space.stdout.exp 2009-04-17 06:52:10 UTC (rev 9569) @@ -0,0 +1 @@ +x = 88 Property changes on: trunk/memcheck/tests/linux/with-space.stdout.exp ___________________________________________________________________ Name: svn:mergeinfo + Copied: trunk/memcheck/tests/linux/with-space.vgtest (from rev 9566, trunk/memcheck/tests/with-space.vgtest) =================================================================== --- trunk/memcheck/tests/linux/with-space.vgtest (rev 0) +++ trunk/memcheck/tests/linux/with-space.vgtest 2009-04-17 06:52:10 UTC (rev 9569) @@ -0,0 +1,14 @@ +# Use the "prereq" command to copy manuel1 to a filename containing a space. +# This used to not work properly, because the debug info would not be read +# correctly for filenames containing spaces (bug #88678). +# +# Nb: we only run this test on Linux. This is because on Darwin you can't +# easily rename an executable with a .dSYM -- the original executable name +# gets baked into the .dSYM, so renaming the .dSYM as well isn't enough, you +# have to modify the contents of the .dSYM. Another idea would be to avoid +# the renaming in the first place by just using 'with space' as the +# filename, but automake doesn't seem to like files containing spaces. +prereq: cp ../manuel1 'with space' +prog: 'with space' +vgopts: -q +cleanup: rm 'with space' Property changes on: trunk/memcheck/tests/linux/with-space.vgtest ___________________________________________________________________ Name: svn:mergeinfo + Deleted: trunk/memcheck/tests/with-space.stderr.exp =================================================================== --- trunk/memcheck/tests/with-space.stderr.exp 2009-04-17 06:51:43 UTC (rev 9568) +++ trunk/memcheck/tests/with-space.stderr.exp 2009-04-17 06:52:10 UTC (rev 9569) @@ -1,2 +0,0 @@ -Conditional jump or move depends on uninitialised value(s) - at 0x........: main (manuel1.c:7) Deleted: trunk/memcheck/tests/with-space.stdout.exp =================================================================== --- trunk/memcheck/tests/with-space.stdout.exp 2009-04-17 06:51:43 UTC (rev 9568) +++ trunk/memcheck/tests/with-space.stdout.exp 2009-04-17 06:52:10 UTC (rev 9569) @@ -1 +0,0 @@ -x = 88 Deleted: trunk/memcheck/tests/with-space.vgtest =================================================================== --- trunk/memcheck/tests/with-space.vgtest 2009-04-17 06:51:43 UTC (rev 9568) +++ trunk/memcheck/tests/with-space.vgtest 2009-04-17 06:52:10 UTC (rev 9569) @@ -1,7 +0,0 @@ -# Use the "prereq" command to copy manuel1 to a filename containing a space. -# This used to not work properly, because the debug info would not be read -# correctly for filenames containing spaces (bug #88678). -prereq: cp manuel1 'with space' -prog: 'with space' -vgopts: -q -cleanup: rm 'with space' |
|
From: <sv...@va...> - 2009-04-17 06:51:46
|
Author: njn Date: 2009-04-17 07:51:43 +0100 (Fri, 17 Apr 2009) New Revision: 9568 Log: Clean up filter_stderr_basic a little. Modified: branches/DARWIN/tests/filter_stderr_basic Modified: branches/DARWIN/tests/filter_stderr_basic =================================================================== --- branches/DARWIN/tests/filter_stderr_basic 2009-04-17 04:26:41 UTC (rev 9567) +++ branches/DARWIN/tests/filter_stderr_basic 2009-04-17 06:51:43 UTC (rev 9568) @@ -2,6 +2,10 @@ # This filter should be applied to *every* stderr result. It removes # Valgrind startup stuff and pid numbers. +# +# Nb: The GNU and BSD implementations of 'sed' are quite different, so +# anything remotely complicated (e.g. "\(a\|b\)" alternatives) can't be +# easily done. Use Perl instead for any such cases. dir=`dirname $0` @@ -41,8 +45,6 @@ # of the bash process. Newer bash versions redirect such messages properly. # Suppress any redirected abnormal termination messages. You can find the # complete list of messages in the bash source file siglist.c. -# DDD: this used "sed -r", but that isn't supported on Darwin, and getting -# the GNU and BSD versions of sed to work similarly is awful. perl -n -e 'print if !/^(Segmentation fault|Alarm clock|Aborted|Bus error)( \(core dumped\))?$/' | # Remove any ": dumping core" message as the user might have a @@ -50,8 +52,5 @@ sed "s/\(signal [0-9]* (SIG[A-Z]*)\): dumping core/\1/" | # Remove the size in "The main thread stack size..." message. -sed "s/The main thread stack size used in this run was [0-9]*/The main thread stack size used in this run was .../" | +sed "s/The main thread stack size used in this run was [0-9]*/The main thread stack size used in this run was .../" -# DDD -# Remove Darwin messages relating to the debugger. -perl -n -e 'print if !/^Listening for debugger on port [0-9]+$/' |
|
From: <sv...@va...> - 2009-04-17 04:26:49
|
Author: njn
Date: 2009-04-17 05:26:41 +0100 (Fri, 17 Apr 2009)
New Revision: 9567
Log:
Merge r9103 and r9105 (add --ignore-fn to Massif) from the Darwin branch.
Added:
trunk/massif/tests/ignored.c
trunk/massif/tests/ignored.post.exp
trunk/massif/tests/ignored.stderr.exp
trunk/massif/tests/ignored.vgtest
Modified:
trunk/massif/docs/ms-manual.xml
trunk/massif/ms_main.c
trunk/massif/tests/Makefile.am
trunk/massif/tests/alloc-fns-A.post.exp
trunk/massif/tests/alloc-fns-A.vgtest
trunk/massif/tests/alloc-fns-B.post.exp
trunk/massif/tests/alloc-fns-B.vgtest
trunk/massif/tests/basic.post.exp
trunk/massif/tests/basic.vgtest
trunk/massif/tests/basic2.post.exp
trunk/massif/tests/basic2.vgtest
trunk/massif/tests/big-alloc.post.exp
trunk/massif/tests/big-alloc.vgtest
trunk/massif/tests/culling1.stderr.exp
trunk/massif/tests/culling1.vgtest
trunk/massif/tests/culling2.stderr.exp
trunk/massif/tests/culling2.vgtest
trunk/massif/tests/custom_alloc.post.exp
trunk/massif/tests/custom_alloc.vgtest
trunk/massif/tests/deep-A.post.exp
trunk/massif/tests/deep-A.vgtest
trunk/massif/tests/deep-B.post.exp
trunk/massif/tests/deep-B.stderr.exp
trunk/massif/tests/deep-B.vgtest
trunk/massif/tests/deep-C.post.exp
trunk/massif/tests/deep-C.stderr.exp
trunk/massif/tests/deep-C.vgtest
trunk/massif/tests/deep-D.post.exp
trunk/massif/tests/deep-D.vgtest
trunk/massif/tests/filter_verbose
trunk/massif/tests/ignoring.post.exp
trunk/massif/tests/ignoring.vgtest
trunk/massif/tests/insig.post.exp
trunk/massif/tests/insig.vgtest
trunk/massif/tests/long-names.post.exp
trunk/massif/tests/long-names.vgtest
trunk/massif/tests/long-time.post.exp
trunk/massif/tests/long-time.vgtest
trunk/massif/tests/new-cpp.post.exp
trunk/massif/tests/new-cpp.vgtest
trunk/massif/tests/no-stack-no-heap.post.exp
trunk/massif/tests/no-stack-no-heap.vgtest
trunk/massif/tests/null.post.exp
trunk/massif/tests/null.vgtest
trunk/massif/tests/one.post.exp
trunk/massif/tests/one.vgtest
trunk/massif/tests/overloaded-new.post.exp
trunk/massif/tests/overloaded-new.vgtest
trunk/massif/tests/peak.post.exp
trunk/massif/tests/peak.vgtest
trunk/massif/tests/peak2.post.exp
trunk/massif/tests/peak2.stderr.exp
trunk/massif/tests/peak2.vgtest
trunk/massif/tests/realloc.post.exp
trunk/massif/tests/realloc.stderr.exp
trunk/massif/tests/realloc.vgtest
trunk/massif/tests/thresholds_0_0.post.exp
trunk/massif/tests/thresholds_0_0.vgtest
trunk/massif/tests/thresholds_0_10.post.exp
trunk/massif/tests/thresholds_0_10.vgtest
trunk/massif/tests/thresholds_10_0.post.exp
trunk/massif/tests/thresholds_10_0.vgtest
trunk/massif/tests/thresholds_10_10.post.exp
trunk/massif/tests/thresholds_10_10.vgtest
trunk/massif/tests/thresholds_5_0.post.exp
trunk/massif/tests/thresholds_5_0.vgtest
trunk/massif/tests/thresholds_5_10.post.exp
trunk/massif/tests/thresholds_5_10.vgtest
trunk/massif/tests/zero1.post.exp
trunk/massif/tests/zero1.vgtest
trunk/massif/tests/zero2.post.exp
trunk/massif/tests/zero2.vgtest
trunk/tests/vg_regtest.in
Modified: trunk/massif/docs/ms-manual.xml
===================================================================
--- trunk/massif/docs/ms-manual.xml 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/docs/ms-manual.xml 2009-04-17 04:26:41 UTC (rev 9567)
@@ -614,6 +614,33 @@
</listitem>
</varlistentry>
+ <varlistentry id="opt.ignore-fn" xreflabel="--ignore-fn">
+ <term>
+ <option><![CDATA[--ignore-fn=<name> ]]></option>
+ </term>
+ <listitem>
+ <para>Any direct heap allocation (i.e. a call to
+ <function>malloc</function>, <function>new</function>, etc, or a call
+ to a function name in a <computeroutput>--alloc-fn</computeroutput>
+ option) that occurs in a function specified by this option will be
+ ignored. This is mostly useful for testing purposes. This option can
+ be specified multiple times on the command line, to name multiple
+ functions.
+ </para>
+
+ <para>Any <function>realloc</function> of an ignored block will
+ also be ignored, even if the <function>realloc</function> call does
+ not occur in an ignored function. This avoids the possibility of
+ negative heap sizes if ignored blocks are shrunk with
+ <function>realloc</function>.
+ </para>
+
+ <para>Note that overloaded C++ names must be written in full, as for
+ <computeroutput>--alloc-fn</computeroutput> above.
+ </para>
+ </listitem>
+ </varlistentry>
+
<varlistentry id="opt.threshold" xreflabel="--threshold">
<term>
<option><![CDATA[--threshold=<m.n> [default: 1.0] ]]></option>
Modified: trunk/massif/ms_main.c
===================================================================
--- trunk/massif/ms_main.c 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/ms_main.c 2009-04-17 04:26:41 UTC (rev 9567)
@@ -233,22 +233,25 @@
// - 15,000 XPts 800,000 XPts
// - 1,800 top-XPts
-static UInt n_heap_allocs = 0;
-static UInt n_heap_reallocs = 0;
-static UInt n_heap_frees = 0;
-static UInt n_stack_allocs = 0;
-static UInt n_stack_frees = 0;
-static UInt n_xpts = 0;
-static UInt n_xpt_init_expansions = 0;
-static UInt n_xpt_later_expansions = 0;
-static UInt n_sxpt_allocs = 0;
-static UInt n_sxpt_frees = 0;
-static UInt n_skipped_snapshots = 0;
-static UInt n_real_snapshots = 0;
-static UInt n_detailed_snapshots = 0;
-static UInt n_peak_snapshots = 0;
-static UInt n_cullings = 0;
-static UInt n_XCon_redos = 0;
+static UInt n_heap_allocs = 0;
+static UInt n_heap_reallocs = 0;
+static UInt n_heap_frees = 0;
+static UInt n_ignored_heap_allocs = 0;
+static UInt n_ignored_heap_frees = 0;
+static UInt n_ignored_heap_reallocs = 0;
+static UInt n_stack_allocs = 0;
+static UInt n_stack_frees = 0;
+static UInt n_xpts = 0;
+static UInt n_xpt_init_expansions = 0;
+static UInt n_xpt_later_expansions = 0;
+static UInt n_sxpt_allocs = 0;
+static UInt n_sxpt_frees = 0;
+static UInt n_skipped_snapshots = 0;
+static UInt n_real_snapshots = 0;
+static UInt n_detailed_snapshots = 0;
+static UInt n_peak_snapshots = 0;
+static UInt n_cullings = 0;
+static UInt n_XCon_redos = 0;
//------------------------------------------------------------//
//--- Globals ---//
@@ -286,6 +289,7 @@
//------------------------------------------------------------//
static XArray* alloc_fns;
+static XArray* ignore_fns;
static void init_alloc_fns(void)
{
@@ -315,18 +319,26 @@
DO("operator new[](unsigned long, std::nothrow_t const&)");
}
-static Bool is_alloc_fn(Char* fnname)
+static void init_ignore_fns(void)
{
- Char** alloc_fn_ptr;
+ // Create the (empty) list.
+ ignore_fns = VG_(newXA)(VG_(malloc), "ms.main.iif.1",
+ VG_(free), sizeof(Char*));
+}
+
+// Determines if the named function is a member of the XArray.
+static Bool is_member_fn(XArray* fns, Char* fnname)
+{
+ Char** fn_ptr;
Int i;
// Nb: It's a linear search through the list, because we're comparing
// strings rather than pointers to strings.
// Nb: This gets called a lot. It was an OSet, but they're quite slow to
// iterate through so it wasn't a good choice.
- for (i = 0; i < VG_(sizeXA)(alloc_fns); i++) {
- alloc_fn_ptr = VG_(indexXA)(alloc_fns, i);
- if (VG_STREQ(fnname, *alloc_fn_ptr))
+ for (i = 0; i < VG_(sizeXA)(fns); i++) {
+ fn_ptr = VG_(indexXA)(fns, i);
+ if (VG_STREQ(fnname, *fn_ptr))
return True;
}
return False;
@@ -395,7 +407,9 @@
else if VG_STR_CLO(arg, "--alloc-fn", tmp_str) {
VG_(addToXA)(alloc_fns, &tmp_str);
}
-
+ else if VG_STR_CLO(arg, "--ignore-fn", tmp_str) {
+ VG_(addToXA)(ignore_fns, &tmp_str);
+ }
else if VG_STR_CLO(arg, "--massif-out-file", clo_massif_out_file) {}
else
@@ -412,7 +426,8 @@
" ignored if --heap=no [8]\n"
" --stacks=no|yes profile stack(s) [no]\n"
" --depth=<number> depth of contexts [30]\n"
-" --alloc-fn=<name> specify <fn> as an alloc function [empty]\n"
+" --alloc-fn=<name> specify <name> as an alloc function [empty]\n"
+" --ignore-fn=<name> ignore heap allocations within <name> [empty]\n"
" --threshold=<m.n> significance threshold, as a percentage [1.0]\n"
" --peak-inaccuracy=<m.n> maximum peak inaccuracy, as a percentage [1.0]\n"
" --time-unit=i|ms|B time unit: instructions executed, milliseconds\n"
@@ -780,6 +795,15 @@
// enough.
#define BUF_LEN 2048
+// Determine if the given IP belongs to a function that should be ignored.
+static Bool fn_should_be_ignored(Addr ip)
+{
+ static Char buf[BUF_LEN];
+ return
+ ( VG_(get_fnname)(ip, buf, BUF_LEN) && is_member_fn(ignore_fns, buf)
+ ? True : False );
+}
+
// Get the stack trace for an XCon, filtering out uninteresting entries:
// alloc-fns and entries above alloc-fns, and entries below main-or-below-main.
// Eg: alloc-fn1 / alloc-fn2 / a / b / main / (below main) / c
@@ -789,7 +813,7 @@
static
Int get_IPs( ThreadId tid, Bool is_custom_alloc, Addr ips[])
{
- Char buf[BUF_LEN];
+ static Char buf[BUF_LEN];
Int n_ips, i, n_alloc_fns_removed;
Int overestimate;
Bool redo;
@@ -832,7 +856,7 @@
// involves calls to VG_(malloc)/VG_(free)).
for (i = n_alloc_fns_removed; i < n_ips; i++) {
if (VG_(get_fnname)(ips[i], buf, BUF_LEN)) {
- if (is_alloc_fn(buf)) {
+ if (is_member_fn(alloc_fns, buf)) {
n_alloc_fns_removed++;
} else {
break;
@@ -859,15 +883,22 @@
}
// Gets an XCon and puts it in the tree. Returns the XCon's bottom-XPt.
+// Unless the allocation should be ignored, in which case we return NULL.
static XPt* get_XCon( ThreadId tid, Bool is_custom_alloc )
{
- Addr ips[MAX_IPS];
+ static Addr ips[MAX_IPS];
Int i;
XPt* xpt = alloc_xpt;
// After this call, the IPs we want are in ips[0]..ips[n_ips-1].
Int n_ips = get_IPs(tid, is_custom_alloc, ips);
+ // Should we ignore this allocation? (Nb: n_ips can be zero, eg. if
+ // 'main' is marked as an alloc-fn.)
+ if (n_ips > 0 && fn_should_be_ignored(ips[0])) {
+ return NULL;
+ }
+
// Now do the search/insertion of the XCon.
for (i = 0; i < n_ips; i++) {
Addr ip = ips[i];
@@ -1489,19 +1520,28 @@
if (clo_heap) {
VERB(3, "<<< new_mem_heap (%lu, %lu)", req_szB, slop_szB);
- // Update statistics.
- n_heap_allocs++;
+ hc->where = get_XCon( tid, is_custom_alloc );
- // Update heap stats.
- update_heap_stats(req_szB, clo_heap_admin + slop_szB);
+ if (hc->where) {
+ // Update statistics.
+ n_heap_allocs++;
- // Update XTree.
- hc->where = get_XCon( tid, is_custom_alloc );
- update_XCon(hc->where, req_szB);
+ // Update heap stats.
+ update_heap_stats(req_szB, clo_heap_admin + slop_szB);
- // Maybe take a snapshot.
- maybe_take_snapshot(Normal, " alloc");
+ // Update XTree.
+ update_XCon(hc->where, req_szB);
+ // Maybe take a snapshot.
+ maybe_take_snapshot(Normal, " alloc");
+
+ } else {
+ // Ignored allocation.
+ n_ignored_heap_allocs++;
+
+ VERB(3, "(ignored)");
+ }
+
VERB(3, ">>>");
}
@@ -1522,21 +1562,28 @@
if (clo_heap) {
VERB(3, "<<< die_mem_heap");
- // Update statistics
- n_heap_frees++;
+ if (hc->where) {
+ // Update statistics.
+ n_heap_frees++;
- // Maybe take a peak snapshot, since it's a deallocation.
- maybe_take_snapshot(Peak, "de-PEAK");
+ // Maybe take a peak snapshot, since it's a deallocation.
+ maybe_take_snapshot(Peak, "de-PEAK");
- // Update heap stats.
- update_heap_stats(-hc->req_szB, -clo_heap_admin - hc->slop_szB);
+ // Update heap stats.
+ update_heap_stats(-hc->req_szB, -clo_heap_admin - hc->slop_szB);
- // Update XTree.
- update_XCon(hc->where, -hc->req_szB);
+ // Update XTree.
+ update_XCon(hc->where, -hc->req_szB);
- // Maybe take a snapshot.
- maybe_take_snapshot(Normal, "dealloc");
+ // Maybe take a snapshot.
+ maybe_take_snapshot(Normal, "dealloc");
+ } else {
+ n_ignored_heap_frees++;
+
+ VERB(3, "(ignored)");
+ }
+
VERB(3, ">>> (-%lu, -%lu)", hc->req_szB, hc->slop_szB);
}
@@ -1546,6 +1593,12 @@
VG_(cli_free)( p );
}
+// Nb: --ignore-fn is tricky for realloc. If the block's original alloc was
+// ignored, but the realloc is not requested to be ignored, and we are
+// shrinking the block, then we have to ignore the realloc -- otherwise we
+// could end up with negative heap sizes. This isn't a danger if we are
+// growing such a block, but for consistency (it also simplifies things) we
+// ignore such reallocs as well.
static __inline__
void* renew_block ( ThreadId tid, void* p_old, SizeT new_req_szB )
{
@@ -1553,6 +1606,7 @@
void* p_new;
SizeT old_req_szB, old_slop_szB, new_slop_szB, new_actual_szB;
XPt *old_where, *new_where;
+ Bool is_ignored = False;
// Remove the old block
hc = VG_(HT_remove)(malloc_list, (UWord)p_old);
@@ -1566,12 +1620,18 @@
if (clo_heap) {
VERB(3, "<<< renew_mem_heap (%lu)", new_req_szB);
- // Update statistics
- n_heap_reallocs++;
+ if (hc->where) {
+ // Update statistics.
+ n_heap_reallocs++;
- // Maybe take a peak snapshot, if it's (effectively) a deallocation.
- if (new_req_szB < old_req_szB) {
- maybe_take_snapshot(Peak, "re-PEAK");
+ // Maybe take a peak snapshot, if it's (effectively) a deallocation.
+ if (new_req_szB < old_req_szB) {
+ maybe_take_snapshot(Peak, "re-PEAK");
+ }
+ } else {
+ // The original malloc was ignored, so we have to ignore the
+ // realloc as well.
+ is_ignored = True;
}
}
@@ -1607,9 +1667,17 @@
// Update XTree.
if (clo_heap) {
new_where = get_XCon( tid, /*custom_malloc*/False);
- hc->where = new_where;
- update_XCon(old_where, -old_req_szB);
- update_XCon(new_where, new_req_szB);
+ if (!is_ignored && new_where) {
+ hc->where = new_where;
+ update_XCon(old_where, -old_req_szB);
+ update_XCon(new_where, new_req_szB);
+ } else {
+ // The realloc itself is ignored.
+ is_ignored = True;
+
+ // Update statistics.
+ n_ignored_heap_reallocs++;
+ }
}
}
@@ -1621,12 +1689,18 @@
VG_(HT_add_node)(malloc_list, hc);
if (clo_heap) {
- // Update heap stats.
- update_heap_stats(new_req_szB - old_req_szB, new_slop_szB - old_slop_szB);
+ if (!is_ignored) {
+ // Update heap stats.
+ update_heap_stats(new_req_szB - old_req_szB,
+ new_slop_szB - old_slop_szB);
- // Maybe take a snapshot.
- maybe_take_snapshot(Normal, "realloc");
+ // Maybe take a snapshot.
+ maybe_take_snapshot(Normal, "realloc");
+ } else {
+ VERB(3, "(ignored)");
+ }
+
VERB(3, ">>> (%ld, %ld)",
new_req_szB - old_req_szB, new_slop_szB - old_slop_szB);
}
@@ -2125,25 +2199,28 @@
// Stats
tl_assert(n_xpts > 0); // always have alloc_xpt
- VERB(1, "heap allocs: %u", n_heap_allocs);
- VERB(1, "heap reallocs: %u", n_heap_reallocs);
- VERB(1, "heap frees: %u", n_heap_frees);
- VERB(1, "stack allocs: %u", n_stack_allocs);
- VERB(1, "stack frees: %u", n_stack_frees);
- VERB(1, "XPts: %u", n_xpts);
- VERB(1, "top-XPts: %u (%d%%)",
+ VERB(1, "heap allocs: %u", n_heap_allocs);
+ VERB(1, "heap reallocs: %u", n_heap_reallocs);
+ VERB(1, "heap frees: %u", n_heap_frees);
+ VERB(1, "ignored heap allocs: %u", n_ignored_heap_allocs);
+ VERB(1, "ignored heap frees: %u", n_ignored_heap_frees);
+ VERB(1, "ignored heap reallocs: %u", n_ignored_heap_reallocs);
+ VERB(1, "stack allocs: %u", n_stack_allocs);
+ VERB(1, "stack frees: %u", n_stack_frees);
+ VERB(1, "XPts: %u", n_xpts);
+ VERB(1, "top-XPts: %u (%d%%)",
alloc_xpt->n_children,
( n_xpts ? alloc_xpt->n_children * 100 / n_xpts : 0));
- VERB(1, "XPt init expansions: %u", n_xpt_init_expansions);
- VERB(1, "XPt later expansions: %u", n_xpt_later_expansions);
- VERB(1, "SXPt allocs: %u", n_sxpt_allocs);
- VERB(1, "SXPt frees: %u", n_sxpt_frees);
- VERB(1, "skipped snapshots: %u", n_skipped_snapshots);
- VERB(1, "real snapshots: %u", n_real_snapshots);
- VERB(1, "detailed snapshots: %u", n_detailed_snapshots);
- VERB(1, "peak snapshots: %u", n_peak_snapshots);
- VERB(1, "cullings: %u", n_cullings);
- VERB(1, "XCon redos: %u", n_XCon_redos);
+ VERB(1, "XPt init expansions: %u", n_xpt_init_expansions);
+ VERB(1, "XPt later expansions: %u", n_xpt_later_expansions);
+ VERB(1, "SXPt allocs: %u", n_sxpt_allocs);
+ VERB(1, "SXPt frees: %u", n_sxpt_frees);
+ VERB(1, "skipped snapshots: %u", n_skipped_snapshots);
+ VERB(1, "real snapshots: %u", n_real_snapshots);
+ VERB(1, "detailed snapshots: %u", n_detailed_snapshots);
+ VERB(1, "peak snapshots: %u", n_peak_snapshots);
+ VERB(1, "cullings: %u", n_cullings);
+ VERB(1, "XCon redos: %u", n_XCon_redos);
}
@@ -2167,13 +2244,22 @@
clo_heap_admin = 0;
}
- // Print alloc-fns, if necessary.
+ // Print alloc-fns and ignore-fns, if necessary.
if (VG_(clo_verbosity) > 1) {
VERB(1, "alloc-fns:");
for (i = 0; i < VG_(sizeXA)(alloc_fns); i++) {
- Char** alloc_fn_ptr = VG_(indexXA)(alloc_fns, i);
- VERB(1, " %d: %s", i, *alloc_fn_ptr);
+ Char** fn_ptr = VG_(indexXA)(alloc_fns, i);
+ VERB(1, " %d: %s", i, *fn_ptr);
}
+
+ VERB(1, "ignore-fns:");
+ if (0 == VG_(sizeXA)(ignore_fns)) {
+ VERB(1, " <empty>");
+ }
+ for (i = 0; i < VG_(sizeXA)(ignore_fns); i++) {
+ Char** fn_ptr = VG_(indexXA)(ignore_fns, i);
+ VERB(1, " %d: %s", i, *fn_ptr);
+ }
}
// Events to track.
@@ -2204,12 +2290,12 @@
"Copyright (C) 2003-2009, and GNU GPL'd, by Nicholas Nethercote");
VG_(details_bug_reports_to) (VG_BUGS_TO);
- // Basic functions
+ // Basic functions.
VG_(basic_tool_funcs) (ms_post_clo_init,
ms_instrument,
ms_fini);
- // Needs
+ // Needs.
VG_(needs_libc_freeres)();
VG_(needs_command_line_options)(ms_process_cmd_line_option,
ms_print_usage,
@@ -2229,14 +2315,15 @@
ms_malloc_usable_size,
0 );
- // HP_Chunks
+ // HP_Chunks.
malloc_list = VG_(HT_construct)( "Massif's malloc list" );
// Dummy node at top of the context structure.
alloc_xpt = new_XPt(/*ip*/0, /*parent*/NULL);
- // Initialise alloc_fns.
+ // Initialise alloc_fns and ignore_fns.
init_alloc_fns();
+ init_ignore_fns();
// Initialise args_for_massif.
args_for_massif = VG_(newXA)(VG_(malloc), "ms.main.mprci.1",
Modified: trunk/massif/tests/Makefile.am
===================================================================
--- trunk/massif/tests/Makefile.am 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/Makefile.am 2009-04-17 04:26:41 UTC (rev 9567)
@@ -8,7 +8,6 @@
alloc-fns-B.post.exp alloc-fns-B.stderr.exp alloc-fns-B.vgtest \
basic.post.exp basic.stderr.exp basic.vgtest \
basic2.post.exp basic2.stderr.exp basic2.vgtest \
- insig.post.exp insig.stderr.exp insig.vgtest \
big-alloc.post.exp big-alloc.stderr.exp big-alloc.vgtest \
deep-A.post.exp deep-A.stderr.exp deep-A.vgtest \
deep-B.post.exp deep-B.stderr.exp deep-B.vgtest \
@@ -17,7 +16,9 @@
culling1.stderr.exp culling1.vgtest \
culling2.stderr.exp culling2.vgtest \
custom_alloc.post.exp custom_alloc.stderr.exp custom_alloc.vgtest \
+ ignored.post.exp ignored.stderr.exp ignored.vgtest \
ignoring.post.exp ignoring.stderr.exp ignoring.vgtest \
+ insig.post.exp insig.stderr.exp insig.vgtest \
long-names.post.exp long-names.stderr.exp long-names.vgtest \
long-time.post.exp long-time.stderr.exp long-time.vgtest \
malloc_usable.stderr.exp malloc_usable.vgtest \
@@ -45,6 +46,7 @@
culling1 culling2 \
custom_alloc \
deep \
+ ignored \
ignoring \
insig \
long-names \
Modified: trunk/massif/tests/alloc-fns-A.post.exp
===================================================================
--- trunk/massif/tests/alloc-fns-A.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/alloc-fns-A.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./alloc-fns
-Massif arguments: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/alloc-fns-A.vgtest
===================================================================
--- trunk/massif/tests/alloc-fns-A.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/alloc-fns-A.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: alloc-fns
vgopts: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/alloc-fns-B.post.exp
===================================================================
--- trunk/massif/tests/alloc-fns-B.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/alloc-fns-B.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./alloc-fns
-Massif arguments: --stacks=no --time-unit=B --heap-admin=0 --alloc-fn=a4 --alloc-fn=b4 --alloc-fn=b3 --alloc-fn=c4 --alloc-fn=c3 --alloc-fn=c2 --alloc-fn=d4 --alloc-fn=d3 --alloc-fn=d2 --alloc-fn=d1 --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --heap-admin=0 --alloc-fn=a4 --alloc-fn=b4 --alloc-fn=b3 --alloc-fn=c4 --alloc-fn=c3 --alloc-fn=c2 --alloc-fn=d4 --alloc-fn=d3 --alloc-fn=d2 --alloc-fn=d1 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/alloc-fns-B.vgtest
===================================================================
--- trunk/massif/tests/alloc-fns-B.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/alloc-fns-B.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: alloc-fns
vgopts: --stacks=no --time-unit=B --heap-admin=0 --alloc-fn=a4 --alloc-fn=b4 --alloc-fn=b3 --alloc-fn=c4 --alloc-fn=c3 --alloc-fn=c2 --alloc-fn=d4 --alloc-fn=d3 --alloc-fn=d2 --alloc-fn=d1 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/basic.post.exp
===================================================================
--- trunk/massif/tests/basic.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/basic.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./basic
-Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/basic.vgtest
===================================================================
--- trunk/massif/tests/basic.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/basic.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: basic
vgopts: --stacks=no --time-unit=B --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/basic2.post.exp
===================================================================
--- trunk/massif/tests/basic2.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/basic2.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./basic
-Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out --detailed-freq=1 --max-snapshots=10
+Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out --detailed-freq=1 --max-snapshots=10 --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/basic2.vgtest
===================================================================
--- trunk/massif/tests/basic2.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/basic2.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: basic
vgopts: --stacks=no --time-unit=B --massif-out-file=massif.out --detailed-freq=1 --max-snapshots=10
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/big-alloc.post.exp
===================================================================
--- trunk/massif/tests/big-alloc.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/big-alloc.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./big-alloc
-Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/big-alloc.vgtest
===================================================================
--- trunk/massif/tests/big-alloc.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/big-alloc.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: big-alloc
vgopts: --stacks=no --time-unit=B --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/culling1.stderr.exp
===================================================================
--- trunk/massif/tests/culling1.stderr.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/culling1.stderr.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -13,6 +13,11 @@
Massif: 11: operator new[](unsigned, std::nothrow_t const&)
Massif: 12: operator new(unsigned long, std::nothrow_t const&)
Massif: 13: operator new[](unsigned long, std::nothrow_t const&)
+Massif: ignore-fns:
+Massif: 0: __part_load_locale
+Massif: 1: __time_load_locale
+Massif: 2: dwarf2_unwind_dyld_add_image_hook
+Massif: 3: get_or_create_key_element
Massif: startup S. 0 (t:0, hp:0, ex:0, st:0)
Massif: alloc S. 1 (t:32, hp:16, ex:16, st:0)
Massif: alloc S. 2 (t:64, hp:32, ex:32, st:0)
@@ -419,20 +424,23 @@
Massif: post-cull S. 48 (t:6240, hp:3120, ex:3120, st:0)
Massif: post-cull Sd 49 (t:6368, hp:3184, ex:3184, st:0)
Massif: New time interval = 128 (between snapshots 0 and 1)
-Massif: heap allocs: 200
-Massif: heap reallocs: 0
-Massif: heap frees: 0
-Massif: stack allocs: 0
-Massif: stack frees: 0
+Massif: heap allocs: 200
+Massif: heap reallocs: 0
+Massif: heap frees: 0
+Massif: ignored heap allocs: ...
+Massif: ignored heap frees: ...
+Massif: ignored heap reallocs: ...
+Massif: stack allocs: 0
+Massif: stack frees: 0
Massif: XPts: ...
Massif: top-XPts: ...
Massif: XPt init expansions: ...
Massif: XPt later expansions: ...
Massif: SXPt allocs: ...
Massif: SXPt frees: ...
-Massif: skipped snapshots: 51
-Massif: real snapshots: 150
-Massif: detailed snapshots: 15
-Massif: peak snapshots: 0
-Massif: cullings: 2
+Massif: skipped snapshots: 51
+Massif: real snapshots: 150
+Massif: detailed snapshots: 15
+Massif: peak snapshots: 0
+Massif: cullings: 2
Massif: XCon redos: ...
Modified: trunk/massif/tests/culling1.vgtest
===================================================================
--- trunk/massif/tests/culling1.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/culling1.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: culling1
vgopts: -v -v --stacks=no --time-unit=B --heap-admin=16 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
stderr_filter: filter_verbose
cleanup: rm massif.out
Modified: trunk/massif/tests/culling2.stderr.exp
===================================================================
--- trunk/massif/tests/culling2.stderr.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/culling2.stderr.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -13,6 +13,11 @@
Massif: 11: operator new[](unsigned, std::nothrow_t const&)
Massif: 12: operator new(unsigned long, std::nothrow_t const&)
Massif: 13: operator new[](unsigned long, std::nothrow_t const&)
+Massif: ignore-fns:
+Massif: 0: __part_load_locale
+Massif: 1: __time_load_locale
+Massif: 2: dwarf2_unwind_dyld_add_image_hook
+Massif: 3: get_or_create_key_element
Massif: startup S. 0 (t:0, hp:0, ex:0, st:0)
Massif: alloc S. 1 (t:16, hp:0, ex:16, st:0)
Massif: alloc S. 2 (t:432, hp:400, ex:32, st:0)
@@ -522,20 +527,23 @@
Massif: post-cull S. 48 (t:7647136, hp:7644000, ex:3136, st:0)
Massif: post-cull Sd 49 (t:7883584, hp:7880400, ex:3184, st:0)
Massif: New time interval = 113728 (between snapshots 1 and 2)
-Massif: heap allocs: 200
-Massif: heap reallocs: 0
-Massif: heap frees: 0
-Massif: stack allocs: 0
-Massif: stack frees: 0
+Massif: heap allocs: 200
+Massif: heap reallocs: 0
+Massif: heap frees: 0
+Massif: ignored heap allocs: ...
+Massif: ignored heap frees: ...
+Massif: ignored heap reallocs: ...
+Massif: stack allocs: 0
+Massif: stack frees: 0
Massif: XPts: ...
Massif: top-XPts: ...
Massif: XPt init expansions: ...
Massif: XPt later expansions: ...
Massif: SXPt allocs: ...
Massif: SXPt frees: ...
-Massif: skipped snapshots: 1
-Massif: real snapshots: 200
-Massif: detailed snapshots: 20
-Massif: peak snapshots: 0
-Massif: cullings: 3
+Massif: skipped snapshots: 1
+Massif: real snapshots: 200
+Massif: detailed snapshots: 20
+Massif: peak snapshots: 0
+Massif: cullings: 3
Massif: XCon redos: ...
Modified: trunk/massif/tests/culling2.vgtest
===================================================================
--- trunk/massif/tests/culling2.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/culling2.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: culling2
vgopts: -v -v --stacks=no --time-unit=B --heap-admin=16 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
stderr_filter: filter_verbose
cleanup: rm massif.out
Modified: trunk/massif/tests/custom_alloc.post.exp
===================================================================
--- trunk/massif/tests/custom_alloc.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/custom_alloc.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./custom_alloc
-Massif arguments: --stacks=no --time-unit=B --heap-admin=16 --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --heap-admin=16 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/custom_alloc.vgtest
===================================================================
--- trunk/massif/tests/custom_alloc.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/custom_alloc.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: custom_alloc
vgopts: --stacks=no --time-unit=B --heap-admin=16 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/deep-A.post.exp
===================================================================
--- trunk/massif/tests/deep-A.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/deep-A.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./deep
-Massif arguments: --stacks=no --time-unit=B --depth=8 --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --depth=8 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/deep-A.vgtest
===================================================================
--- trunk/massif/tests/deep-A.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/deep-A.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: deep
vgopts: --stacks=no --time-unit=B --depth=8 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/deep-B.post.exp
===================================================================
--- trunk/massif/tests/deep-B.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/deep-B.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./deep
-Massif arguments: --stacks=no --time-unit=B --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 --depth=8 --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 --depth=8 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/deep-B.stderr.exp
===================================================================
--- trunk/massif/tests/deep-B.stderr.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/deep-B.stderr.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -20,6 +20,11 @@
Massif: 18: a10
Massif: 19: a11
Massif: 20: a12
+Massif: ignore-fns:
+Massif: 0: __part_load_locale
+Massif: 1: __time_load_locale
+Massif: 2: dwarf2_unwind_dyld_add_image_hook
+Massif: 3: get_or_create_key_element
Massif: startup S. 0 (t:0, hp:0, ex:0, st:0)
Massif: alloc S. 1 (t:408, hp:400, ex:8, st:0)
Massif: alloc S. 2 (t:816, hp:800, ex:16, st:0)
@@ -31,20 +36,23 @@
Massif: alloc S. 8 (t:3264, hp:3200, ex:64, st:0)
Massif: alloc Sd 9 (t:3672, hp:3600, ex:72, st:0)
Massif: alloc S. 10 (t:4080, hp:4000, ex:80, st:0)
-Massif: heap allocs: 10
-Massif: heap reallocs: 0
-Massif: heap frees: 0
-Massif: stack allocs: 0
-Massif: stack frees: 0
+Massif: heap allocs: 10
+Massif: heap reallocs: 0
+Massif: heap frees: 0
+Massif: ignored heap allocs: ...
+Massif: ignored heap frees: ...
+Massif: ignored heap reallocs: ...
+Massif: stack allocs: 0
+Massif: stack frees: 0
Massif: XPts: ...
Massif: top-XPts: ...
Massif: XPt init expansions: ...
Massif: XPt later expansions: ...
Massif: SXPt allocs: ...
Massif: SXPt frees: ...
-Massif: skipped snapshots: 0
-Massif: real snapshots: 11
-Massif: detailed snapshots: 1
-Massif: peak snapshots: 0
-Massif: cullings: 0
+Massif: skipped snapshots: 0
+Massif: real snapshots: 11
+Massif: detailed snapshots: 1
+Massif: peak snapshots: 0
+Massif: cullings: 0
Massif: XCon redos: ...
Modified: trunk/massif/tests/deep-B.vgtest
===================================================================
--- trunk/massif/tests/deep-B.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/deep-B.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,5 +1,6 @@
prog: deep
vgopts: --stacks=no --time-unit=B --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 -v -v --depth=8 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
stderr_filter: filter_verbose
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/deep-C.post.exp
===================================================================
--- trunk/massif/tests/deep-C.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/deep-C.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./deep
-Massif arguments: --stacks=no --time-unit=B --alloc-fn=a3 --alloc-fn=a4 --alloc-fn=a5 --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 --depth=8 --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --alloc-fn=a3 --alloc-fn=a4 --alloc-fn=a5 --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 --depth=8 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/deep-C.stderr.exp
===================================================================
--- trunk/massif/tests/deep-C.stderr.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/deep-C.stderr.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -23,6 +23,11 @@
Massif: 21: a10
Massif: 22: a11
Massif: 23: a12
+Massif: ignore-fns:
+Massif: 0: __part_load_locale
+Massif: 1: __time_load_locale
+Massif: 2: dwarf2_unwind_dyld_add_image_hook
+Massif: 3: get_or_create_key_element
Massif: startup S. 0 (t:0, hp:0, ex:0, st:0)
Massif: alloc S. 1 (t:408, hp:400, ex:8, st:0)
Massif: alloc S. 2 (t:816, hp:800, ex:16, st:0)
@@ -34,20 +39,23 @@
Massif: alloc S. 8 (t:3264, hp:3200, ex:64, st:0)
Massif: alloc Sd 9 (t:3672, hp:3600, ex:72, st:0)
Massif: alloc S. 10 (t:4080, hp:4000, ex:80, st:0)
-Massif: heap allocs: 10
-Massif: heap reallocs: 0
-Massif: heap frees: 0
-Massif: stack allocs: 0
-Massif: stack frees: 0
+Massif: heap allocs: 10
+Massif: heap reallocs: 0
+Massif: heap frees: 0
+Massif: ignored heap allocs: ...
+Massif: ignored heap frees: ...
+Massif: ignored heap reallocs: ...
+Massif: stack allocs: 0
+Massif: stack frees: 0
Massif: XPts: ...
Massif: top-XPts: ...
Massif: XPt init expansions: ...
Massif: XPt later expansions: ...
Massif: SXPt allocs: ...
Massif: SXPt frees: ...
-Massif: skipped snapshots: 0
-Massif: real snapshots: 11
-Massif: detailed snapshots: 1
-Massif: peak snapshots: 0
-Massif: cullings: 0
+Massif: skipped snapshots: 0
+Massif: real snapshots: 11
+Massif: detailed snapshots: 1
+Massif: peak snapshots: 0
+Massif: cullings: 0
Massif: XCon redos: ...
Modified: trunk/massif/tests/deep-C.vgtest
===================================================================
--- trunk/massif/tests/deep-C.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/deep-C.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,5 +1,6 @@
prog: deep
vgopts: --stacks=no --time-unit=B --alloc-fn=a3 --alloc-fn=a4 --alloc-fn=a5 --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 -v -v --depth=8 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
stderr_filter: filter_verbose
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/deep-D.post.exp
===================================================================
--- trunk/massif/tests/deep-D.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/deep-D.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./deep
-Massif arguments: --stacks=no --time-unit=B --alloc-fn=a1 --alloc-fn=a2 --alloc-fn=a3 --alloc-fn=a4 --alloc-fn=a5 --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 --alloc-fn=main --depth=20 --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --alloc-fn=a1 --alloc-fn=a2 --alloc-fn=a3 --alloc-fn=a4 --alloc-fn=a5 --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 --alloc-fn=main --depth=20 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/deep-D.vgtest
===================================================================
--- trunk/massif/tests/deep-D.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/deep-D.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: deep
vgopts: --stacks=no --time-unit=B --alloc-fn=a1 --alloc-fn=a2 --alloc-fn=a3 --alloc-fn=a4 --alloc-fn=a5 --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 --alloc-fn=main --depth=20 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses | ../../tests/filter_libc
cleanup: rm massif.out
Modified: trunk/massif/tests/filter_verbose
===================================================================
--- trunk/massif/tests/filter_verbose 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/filter_verbose 2009-04-17 04:26:41 UTC (rev 9567)
@@ -11,6 +11,11 @@
# lines by default, and the 'p' means do print those that match the pattern.
sed -n "/Massif:/p" |
+# These ignored heap counts could vary from machine to machine.
+sed "s/\(Massif: ignored heap allocs:\).*/\1 .../" |
+sed "s/\(Massif: ignored heap frees:\).*/\1 .../" |
+sed "s/\(Massif: ignored heap reallocs:\).*/\1 .../" |
+
# These XPt counts vary from machine to machine, because the size of the
# stack trace can vary -- eg. some machines have more stack frames below
# zero than other machines. So filter them out.
Copied: trunk/massif/tests/ignored.c (from rev 9103, branches/DARWIN/massif/tests/ignored.c)
===================================================================
--- trunk/massif/tests/ignored.c (rev 0)
+++ trunk/massif/tests/ignored.c 2009-04-17 04:26:41 UTC (rev 9567)
@@ -0,0 +1,49 @@
+#include <stdlib.h>
+
+// All sizes are divisible by 16 -- no slop.
+
+int* ignore1(void)
+{
+ // Allocating/freeing in an ignored function: ignored.
+ int* ignored_x1 = malloc(400);
+ int* ignored_x2 = malloc(400);
+ free(ignored_x2);
+ return ignored_x1;
+}
+
+void ignore2(int* x, int* ignored_x)
+{
+ // Growing/shrinking a non-ignored block in an ignored function: ignored.
+ x = realloc(x, 800);
+ x = realloc(x, 400);
+
+ // Growing/shrinking an ignored block in an ignored function: ignored.
+ ignored_x = realloc(ignored_x, 800);
+ ignored_x = realloc(ignored_x, 400);
+}
+
+int main(void)
+{
+ int* x;
+ int* ignored_x;
+
+ // Not ignored.
+ x = malloc(400);
+
+ // Get an ignored block.
+ ignored_x = ignore1();
+
+ // Growing/shrinking a non-ignored block in a non-ignored function:
+ // not ignored.
+ x = realloc(x, 800);
+ x = realloc(x, 400);
+
+ // Growing/shrinking an ignored block in a non-ignored function: ignored.
+ ignored_x = realloc(ignored_x, 800);
+ ignored_x = realloc(ignored_x, 400);
+
+ ignore2(x, ignored_x);
+
+ x = realloc(ignored_x, 0); // equivalent to 'free(ignored_x)'.
+}
+
Copied: trunk/massif/tests/ignored.post.exp (from rev 9103, branches/DARWIN/massif/tests/ignored.post.exp)
===================================================================
--- trunk/massif/tests/ignored.post.exp (rev 0)
+++ trunk/massif/tests/ignored.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -0,0 +1,50 @@
+--------------------------------------------------------------------------------
+Command: ./ignored
+Massif arguments: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out --ignore-fn=ignore1 --ignore-fn=ignore2 --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
+ms_print arguments: massif.out
+--------------------------------------------------------------------------------
+
+
+ B
+ 800^ #
+ | #
+ | #
+ | #
+ | #
+ | #
+ | #
+ | #
+ | #
+ | #
+ | : #
+ | : #
+ | : #
+ | : #
+ | : #
+ | : #
+ | : #
+ | : #
+ | : #
+ | : #
+ 0 +----------------------------------------------------------------------->B
+ 0 800
+
+Number of snapshots: 5
+ Detailed snapshots: [3 (peak)]
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 0 0 0 0 0 0
+ 1 400 400 400 0 0
+ 2 800 800 800 0 0
+ 3 800 800 800 0 0
+100.00% (800B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->100.00% (800B) 0x........: main (ignored.c:38)
+|
+->00.00% (0B) in 1+ places, all below ms_print's threshold (01.00%)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 4 800 800 400 400 0
Copied: trunk/massif/tests/ignored.stderr.exp (from rev 9103, branches/DARWIN/massif/tests/ignored.stderr.exp)
===================================================================
--- trunk/massif/tests/ignored.stderr.exp (rev 0)
+++ trunk/massif/tests/ignored.stderr.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -0,0 +1,2 @@
+
+
Copied: trunk/massif/tests/ignored.vgtest (from rev 9103, branches/DARWIN/massif/tests/ignored.vgtest)
===================================================================
--- trunk/massif/tests/ignored.vgtest (rev 0)
+++ trunk/massif/tests/ignored.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -0,0 +1,6 @@
+prog: ignored
+vgopts: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out
+vgopts: --ignore-fn=ignore1 --ignore-fn=ignore2
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
+post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
+cleanup: rm massif.out
Modified: trunk/massif/tests/ignoring.post.exp
===================================================================
--- trunk/massif/tests/ignoring.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/ignoring.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./ignoring
-Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/ignoring.vgtest
===================================================================
--- trunk/massif/tests/ignoring.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/ignoring.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: ignoring
vgopts: --stacks=no --time-unit=B --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/insig.post.exp
===================================================================
--- trunk/massif/tests/insig.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/insig.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./insig
-Massif arguments: --stacks=no --time-unit=B --heap-admin=128 --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --heap-admin=128 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/insig.vgtest
===================================================================
--- trunk/massif/tests/insig.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/insig.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: insig
vgopts: --stacks=no --time-unit=B --heap-admin=128 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/long-names.post.exp
===================================================================
--- trunk/massif/tests/long-names.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/long-names.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./long-names
-Massif arguments: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out --detailed-freq=3
+Massif arguments: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out --detailed-freq=3 --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/long-names.vgtest
===================================================================
--- trunk/massif/tests/long-names.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/long-names.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: long-names
vgopts: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out --detailed-freq=3
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/long-time.post.exp
===================================================================
--- trunk/massif/tests/long-time.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/long-time.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./long-time
-Massif arguments: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
--------------------------------------------------------------------------------
Modified: trunk/massif/tests/long-time.vgtest
===================================================================
--- trunk/massif/tests/long-time.vgtest 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/long-time.vgtest 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,4 +1,5 @@
prog: long-time
vgopts: --stacks=no --time-unit=B --heap-admin=0 --massif-out-file=massif.out
+vgopts: --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
post: perl ../../massif/ms_print massif.out | ../../tests/filter_addresses
cleanup: rm massif.out
Modified: trunk/massif/tests/new-cpp.post.exp
===================================================================
--- trunk/massif/tests/new-cpp.post.exp 2009-04-17 03:37:50 UTC (rev 9566)
+++ trunk/massif/tests/new-cpp.post.exp 2009-04-17 04:26:41 UTC (rev 9567)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./new-cpp
-Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out
+Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
ms_print arguments: massif.out
------------------------------------------------------------------...
[truncated message content] |
|
From: Nicholas N. <n.n...@gm...> - 2009-04-17 03:38:14
|
On Thu, Apr 16, 2009 at 6:55 PM, Filipe Cabecinhas <fi...@gm...> wrote: > Hi, > > Sorry, I got the sources mixed up. Here is a clean patch against the latest > revision of the branch. Committed, thanks. Nick |
|
From: <sv...@va...> - 2009-04-17 03:38:05
|
Author: njn
Date: 2009-04-17 04:37:50 +0100 (Fri, 17 Apr 2009)
New Revision: 9566
Log:
Add support for csops and fcntl(F_ADDSIGS), from Filipe Cabecinhas.
Modified:
branches/DARWIN/coregrind/m_syswrap/priv_syswrap-darwin.h
branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c
branches/DARWIN/include/vki/vki-darwin.h
Modified: branches/DARWIN/coregrind/m_syswrap/priv_syswrap-darwin.h
===================================================================
--- branches/DARWIN/coregrind/m_syswrap/priv_syswrap-darwin.h 2009-04-16 02:04:07 UTC (rev 9565)
+++ branches/DARWIN/coregrind/m_syswrap/priv_syswrap-darwin.h 2009-04-17 03:37:50 UTC (rev 9566)
@@ -120,6 +120,7 @@
DECL_TEMPLATE(darwin, sys_getdirentries64);
DECL_TEMPLATE(darwin, sys_statfs64);
DECL_TEMPLATE(darwin, sys_fstatfs64);
+DECL_TEMPLATE(darwin, sys_csops);
DECL_TEMPLATE(darwin, sys_auditon);
DECL_TEMPLATE(darwin, sys_pathconf);
DECL_TEMPLATE(darwin, sys_fpathconf);
Modified: branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c
===================================================================
--- branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c 2009-04-16 02:04:07 UTC (rev 9565)
+++ branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c 2009-04-17 03:37:50 UTC (rev 9566)
@@ -961,6 +961,7 @@
F(F_LOG2PHYS);
F(F_GETPATH);
F(F_PATHPKG_CHECK);
+ F(F_ADDSIGS);
default:
return "UNKNOWN";
}
@@ -1098,6 +1099,25 @@
PRE_MEM_RASCIIZ( "fcntl(F_PATHPKG_CHECK, pathbuf)", ARG3);
break;
+ case VKI_F_ADDSIGS: /* Add detached signatures (for code signing) */
+ PRINT("sys_fcntl ( %ld, %s )", ARG1, name_for_fcntl(ARG2));
+ PRE_REG_READ3(long, "fcntl",
+ unsigned int, fd, unsigned int, cmd,
+ vki_fsignatures_t *, sigs);
+
+ {
+ vki_fsignatures_t *fsigs = (vki_fsignatures_t*)ARG3;
+ PRE_FIELD_READ( "fcntl(F_ADDSIGS, fsigs->fs_blob_start)",
+ fsigs->fs_blob_start);
+ PRE_FIELD_READ( "fcntl(F_ADDSIGS, fsigs->fs_blob_size)",
+ fsigs->fs_blob_size);
+
+ if (fsigs->fs_blob_start)
+ PRE_MEM_READ( "fcntl(F_ADDSIGS, fsigs->fs_blob_start)",
+ (Addr)fsigs->fs_blob_start, fsigs->fs_blob_size);
+ }
+ break;
+
default:
PRINT("sys_fcntl ( %ld, %ld [??] )", ARG1, ARG2);
if (VG_(clo_trace_unknown_syscalls)) {
@@ -2912,7 +2932,32 @@
POST_MEM_WRITE( ARG2, sizeof(struct vki_statfs64) );
}
+PRE(sys_csops)
+{
+ PRINT("sys_csops ( %ld, %#lx, %#lx, %lu )", ARG1, ARG2, ARG3, ARG4);
+ PRE_REG_READ4(int, "csops",
+ vki_pid_t, pid, uint32_t, ops,
+ void *, useraddr, vki_size_t, usersize);
+ PRE_MEM_WRITE( "csops(addr)", ARG3, ARG4 );
+
+ // If the pid is ours, don't mark the program as KILL or HARD
+ // Maybe we should keep track of this for later calls to STATUS
+ if (!ARG1 || VG_(getpid)() == ARG1) {
+ switch (ARG2) {
+ case VKI_CS_OPS_MARKINVALID:
+ case VKI_CS_OPS_MARKHARD:
+ case VKI_CS_OPS_MARKKILL:
+ SET_STATUS_Success(0);
+ }
+ }
+}
+
+POST(sys_csops)
+{
+ POST_MEM_WRITE( ARG3, ARG4 );
+}
+
PRE(sys_auditon)
{
PRINT("sys_auditon ( %ld, %#lx, %ld )", ARG1, ARG2, ARG3);
@@ -7060,7 +7105,7 @@
_____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(166)), // old exportfs
// _____(__NR_mount),
_____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(168)), // old ustat
-// _____(__NR_csops),
+ MACXY(__NR_csops, sys_csops), // code-signing ops
_____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(170)), // old table
_____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(171)), // old wait3
_____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(172)), // old rpause
Modified: branches/DARWIN/include/vki/vki-darwin.h
===================================================================
--- branches/DARWIN/include/vki/vki-darwin.h 2009-04-16 02:04:07 UTC (rev 9565)
+++ branches/DARWIN/include/vki/vki-darwin.h 2009-04-17 03:37:50 UTC (rev 9566)
@@ -290,6 +290,7 @@
#define VKI_F_NOCACHE F_NOCACHE
#define VKI_F_LOG2PHYS F_LOG2PHYS
#define VKI_F_GETPATH F_GETPATH
+#define VKI_F_ADDSIGS F_ADDSIGS
#define VKI_F_FULLFSYNC F_FULLFSYNC
#define VKI_F_PATHPKG_CHECK F_PATHPKG_CHECK
#define VKI_F_FREEZE_FS F_FREEZE_FS
@@ -302,7 +303,17 @@
#define vki_fstore fstore
#define vki_fbootstraptransfer fbootstraptransfer
#define vki_log2phys log2phys
+#define vki_fsignatures_t fsignatures_t
+// These constants aren't in a standard header, they are from the kernel code:
+// xnu-1228.3.13/bsd/sys/codesign.h
+// Mac OS X 10.5.6 - Darwin 9.6
+#define VKI_CS_OPS_STATUS 0 /* return status */
+#define VKI_CS_OPS_MARKINVALID 1 /* invalidate process */
+#define VKI_CS_OPS_MARKHARD 2 /* set HARD flag */
+#define VKI_CS_OPS_MARKKILL 3 /* set KILL flag (sticky) */
+#define VKI_CS_OPS_PIDPATH 4 /* get executable's pathname */
+#define VKI_CS_OPS_CDHASH 5 /* get code directory hash */
#include <sys/mman.h>
|
|
From: Tom H. <th...@cy...> - 2009-04-17 03:03:27
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2009-04-17 03:05:08 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 == 477 tests, 0 stderr failures, 0 stdout failures, 0 post failures == |
|
From: Tom H. <th...@cy...> - 2009-04-17 02:47:26
|
Nightly build on mg ( x86_64, Fedora 9 ) started at 2009-04-17 03:10:04 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 == 483 tests, 0 stderr failures, 1 stdout failure, 0 post failures == none/tests/linux/mremap2 (stdout) |