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
|
2
|
|
3
|
4
|
5
|
6
|
7
(1) |
8
|
9
|
|
10
|
11
|
12
(6) |
13
(4) |
14
(3) |
15
(1) |
16
(2) |
|
17
(7) |
18
(1) |
19
(5) |
20
(3) |
21
(1) |
22
(5) |
23
|
|
24
(1) |
25
(3) |
26
(2) |
27
(1) |
28
(2) |
29
(1) |
30
|
|
31
|
|
|
|
|
|
|
|
From: <sv...@va...> - 2016-01-22 22:06:10
|
Author: philippe
Date: Fri Jan 22 22:06:02 2016
New Revision: 15771
Log:
Change tests using --fullpath-after so as to work with ccache caching compiler
ccache sometimes causes the source file absolute name to be another
full path (not $PWD).
This means that the badfree3 and varinfo5 tests can fail due to
the full path after not being match on $PWD.
So, rather ask full path after a part of the path that is stable
even when ccache decides to reuse a already compiled object from
another directory.
Modified:
trunk/memcheck/tests/badfree3.stderr.exp
trunk/memcheck/tests/badfree3.vgtest
trunk/memcheck/tests/varinfo5.stderr.exp
trunk/memcheck/tests/varinfo5.vgtest
Modified: trunk/memcheck/tests/badfree3.stderr.exp
==============================================================================
--- trunk/memcheck/tests/badfree3.stderr.exp (original)
+++ trunk/memcheck/tests/badfree3.stderr.exp Fri Jan 22 22:06:02 2016
@@ -1,11 +1,11 @@
Invalid free() / delete / delete[] / realloc()
- at 0x........: free (coregrind/vg_replace_malloc.c:...)
- by 0x........: main (memcheck/tests/badfree.c:12)
+ at 0x........: free (vg_replace_malloc.c:...)
+ by 0x........: main (tests/badfree.c:12)
Address 0x........ is not stack'd, malloc'd or (recently) free'd
Invalid free() / delete / delete[] / realloc()
- at 0x........: free (coregrind/vg_replace_malloc.c:...)
- by 0x........: main (memcheck/tests/badfree.c:15)
+ at 0x........: free (vg_replace_malloc.c:...)
+ by 0x........: main (tests/badfree.c:15)
Address 0x........ is on thread 1's stack
in frame #1, created by main (badfree.c:7)
Modified: trunk/memcheck/tests/badfree3.vgtest
==============================================================================
--- trunk/memcheck/tests/badfree3.vgtest (original)
+++ trunk/memcheck/tests/badfree3.vgtest Fri Jan 22 22:06:02 2016
@@ -1,3 +1,3 @@
prog: badfree
-vgopts: -q --fullpath-after=${PWD}/
+vgopts: -q --fullpath-after=memcheck/ --fullpath-after=coregrind/
stderr_filter_args: badfree.c
Modified: trunk/memcheck/tests/varinfo5.stderr.exp
==============================================================================
--- trunk/memcheck/tests/varinfo5.stderr.exp (original)
+++ trunk/memcheck/tests/varinfo5.stderr.exp Fri Jan 22 22:06:02 2016
@@ -1,191 +1,191 @@
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: varinfo1_main (memcheck/tests/varinfo5so.c:52)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:154)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: varinfo1_main (tests/varinfo5so.c:52)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:154)
+ by 0x........: main (tests/varinfo5.c:5)
Address 0x........ is 1 bytes inside a block of size 3 alloc'd
- at 0x........: malloc (coregrind/vg_replace_malloc.c:...)
- by 0x........: varinfo1_main (memcheck/tests/varinfo5so.c:50)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:154)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: varinfo1_main (tests/varinfo5so.c:50)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:154)
+ by 0x........: main (tests/varinfo5.c:5)
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: varinfo1_main (memcheck/tests/varinfo5so.c:55)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:154)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: varinfo1_main (tests/varinfo5so.c:55)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:154)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside global var "global_u1"
declared at varinfo5so.c:38
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: varinfo1_main (memcheck/tests/varinfo5so.c:56)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:154)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: varinfo1_main (tests/varinfo5so.c:56)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:154)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside global var "global_i1"
declared at varinfo5so.c:40
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: varinfo1_main (memcheck/tests/varinfo5so.c:57)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:154)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: varinfo1_main (tests/varinfo5so.c:57)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:154)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside global_u2[3],
a global variable declared at varinfo5so.c:42
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: varinfo1_main (memcheck/tests/varinfo5so.c:58)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:154)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: varinfo1_main (tests/varinfo5so.c:58)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:154)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside global_i2[7],
a global variable declared at varinfo5so.c:44
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: varinfo1_main (memcheck/tests/varinfo5so.c:59)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:154)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: varinfo1_main (tests/varinfo5so.c:59)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:154)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside local var "local"
declared at varinfo5so.c:49, in frame #1 of thread 1
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: foo2 (memcheck/tests/varinfo5so.c:71)
- by 0x........: varinfo2_main (memcheck/tests/varinfo5so.c:81)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:155)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: foo2 (tests/varinfo5so.c:71)
+ by 0x........: varinfo2_main (tests/varinfo5so.c:81)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:155)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside var[7],
declared at varinfo5so.c:69, in frame #1 of thread 1
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: foo2 (memcheck/tests/varinfo5so.c:73)
- by 0x........: varinfo2_main (memcheck/tests/varinfo5so.c:81)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:155)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: foo2 (tests/varinfo5so.c:73)
+ by 0x........: varinfo2_main (tests/varinfo5so.c:81)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:155)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 2 bytes inside var.bar,
declared at varinfo5so.c:72, in frame #1 of thread 1
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: foo2 (memcheck/tests/varinfo5so.c:76)
- by 0x........: varinfo2_main (memcheck/tests/varinfo5so.c:81)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:155)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: foo2 (tests/varinfo5so.c:76)
+ by 0x........: varinfo2_main (tests/varinfo5so.c:81)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:155)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 1 byte inside local var "var"
declared at varinfo5so.c:67, in frame #1 of thread 1
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: foo3 (memcheck/tests/varinfo5so.c:106)
- by 0x........: varinfo3_main (memcheck/tests/varinfo5so.c:118)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:156)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: foo3 (tests/varinfo5so.c:106)
+ by 0x........: varinfo3_main (tests/varinfo5so.c:118)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:156)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside static_global_def[1],
a global variable declared at varinfo5so.c:87
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: foo3 (memcheck/tests/varinfo5so.c:107)
- by 0x........: varinfo3_main (memcheck/tests/varinfo5so.c:118)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:156)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: foo3 (tests/varinfo5so.c:107)
+ by 0x........: varinfo3_main (tests/varinfo5so.c:118)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:156)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside nonstatic_global_def[2],
a global variable declared at varinfo5so.c:88
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: foo3 (memcheck/tests/varinfo5so.c:108)
- by 0x........: varinfo3_main (memcheck/tests/varinfo5so.c:118)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:156)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: foo3 (tests/varinfo5so.c:108)
+ by 0x........: varinfo3_main (tests/varinfo5so.c:118)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:156)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside static_global_undef[3],
a global variable declared at varinfo5so.c:89
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: foo3 (memcheck/tests/varinfo5so.c:109)
- by 0x........: varinfo3_main (memcheck/tests/varinfo5so.c:118)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:156)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: foo3 (tests/varinfo5so.c:109)
+ by 0x........: varinfo3_main (tests/varinfo5so.c:118)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:156)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside nonstatic_global_undef[4],
a global variable declared at varinfo5so.c:90
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: bar3 (memcheck/tests/varinfo5so.c:94)
- by 0x........: foo3 (memcheck/tests/varinfo5so.c:110)
- by 0x........: varinfo3_main (memcheck/tests/varinfo5so.c:118)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:156)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: bar3 (tests/varinfo5so.c:94)
+ by 0x........: foo3 (tests/varinfo5so.c:110)
+ by 0x........: varinfo3_main (tests/varinfo5so.c:118)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:156)
+ by 0x........: main (tests/varinfo5.c:5)
Address 0x........ is 5 bytes inside data symbol "static_local_def.XXXX"
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: bar3 (memcheck/tests/varinfo5so.c:95)
- by 0x........: foo3 (memcheck/tests/varinfo5so.c:110)
- by 0x........: varinfo3_main (memcheck/tests/varinfo5so.c:118)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:156)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: bar3 (tests/varinfo5so.c:95)
+ by 0x........: foo3 (tests/varinfo5so.c:110)
+ by 0x........: varinfo3_main (tests/varinfo5so.c:118)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:156)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside nonstatic_local_def[6],
declared at varinfo5so.c:103, in frame #2 of thread 1
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: bar3 (memcheck/tests/varinfo5so.c:96)
- by 0x........: foo3 (memcheck/tests/varinfo5so.c:110)
- by 0x........: varinfo3_main (memcheck/tests/varinfo5so.c:118)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:156)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: bar3 (tests/varinfo5so.c:96)
+ by 0x........: foo3 (tests/varinfo5so.c:110)
+ by 0x........: varinfo3_main (tests/varinfo5so.c:118)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:156)
+ by 0x........: main (tests/varinfo5.c:5)
Address 0x........ is 7 bytes inside data symbol "static_local_undef.XXXX"
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: bar3 (memcheck/tests/varinfo5so.c:97)
- by 0x........: foo3 (memcheck/tests/varinfo5so.c:110)
- by 0x........: varinfo3_main (memcheck/tests/varinfo5so.c:118)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:156)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: bar3 (tests/varinfo5so.c:97)
+ by 0x........: foo3 (tests/varinfo5so.c:110)
+ by 0x........: varinfo3_main (tests/varinfo5so.c:118)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:156)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside nonstatic_local_undef[8],
declared at varinfo5so.c:105, in frame #2 of thread 1
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: blah4 (memcheck/tests/varinfo5so.c:137)
- by 0x........: varinfo4_main (memcheck/tests/varinfo5so.c:146)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:157)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: blah4 (tests/varinfo5so.c:137)
+ by 0x........: varinfo4_main (tests/varinfo5so.c:146)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:157)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 1 byte inside a[3].xyzzy[21].c1,
declared at varinfo5so.c:135, in frame #1 of thread 1
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: blah4 (memcheck/tests/varinfo5so.c:138)
- by 0x........: varinfo4_main (memcheck/tests/varinfo5so.c:146)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:157)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: blah4 (tests/varinfo5so.c:138)
+ by 0x........: varinfo4_main (tests/varinfo5so.c:146)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:157)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 0 bytes inside a[5].bong,
declared at varinfo5so.c:135, in frame #1 of thread 1
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: blah4 (memcheck/tests/varinfo5so.c:139)
- by 0x........: varinfo4_main (memcheck/tests/varinfo5so.c:146)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:157)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: blah4 (tests/varinfo5so.c:139)
+ by 0x........: varinfo4_main (tests/varinfo5so.c:146)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:157)
+ by 0x........: main (tests/varinfo5.c:5)
Location 0x........ is 1 byte inside a[3].xyzzy[21].c2[2],
declared at varinfo5so.c:135, in frame #1 of thread 1
answer is 0
Uninitialised byte(s) found during client check request
- at 0x........: croak (memcheck/tests/varinfo5so.c:29)
- by 0x........: fun_c (memcheck/tests/varinfo5so.c:164)
- by 0x........: fun_b (memcheck/tests/varinfo5so.c:168)
- by 0x........: fun_a (memcheck/tests/varinfo5so.c:172)
- by 0x........: inlinetest (memcheck/tests/varinfo5so.c:178)
- by 0x........: varinfo5_main (memcheck/tests/varinfo5so.c:158)
- by 0x........: main (memcheck/tests/varinfo5.c:5)
+ at 0x........: croak (tests/varinfo5so.c:29)
+ by 0x........: fun_c (tests/varinfo5so.c:164)
+ by 0x........: fun_b (tests/varinfo5so.c:168)
+ by 0x........: fun_a (tests/varinfo5so.c:172)
+ by 0x........: inlinetest (tests/varinfo5so.c:178)
+ by 0x........: varinfo5_main (tests/varinfo5so.c:158)
+ by 0x........: main (tests/varinfo5.c:5)
Address 0x........ is on thread 1's stack
in frame #1, created by varinfo5_main (varinfo5so.c:153)
Modified: trunk/memcheck/tests/varinfo5.vgtest
==============================================================================
--- trunk/memcheck/tests/varinfo5.vgtest (original)
+++ trunk/memcheck/tests/varinfo5.vgtest Fri Jan 22 22:06:02 2016
@@ -1,3 +1,3 @@
prog: varinfo5
-vgopts: --fullpath-after=${PWD}/ --read-var-info=yes --read-inline-info=yes -q
+vgopts: --fullpath-after=memcheck/ --fullpath-after=coregrind/ --read-var-info=yes --read-inline-info=yes -q
stderr_filter: filter_varinfo3
|
|
From: <sv...@va...> - 2016-01-22 21:06:33
|
Author: philippe
Date: Fri Jan 22 21:06:23 2016
New Revision: 15770
Log:
Implement support for 'catch syscall' in gdbserver.
Note that catch syscall implies to use the soon to be released
gdb 7.11 version.
Modified:
trunk/NEWS
trunk/coregrind/m_gdbserver/m_gdbserver.c
trunk/coregrind/m_gdbserver/remote-utils.c
trunk/coregrind/m_gdbserver/server.c
trunk/coregrind/m_gdbserver/server.h
trunk/coregrind/m_gdbserver/target.c
trunk/coregrind/m_gdbserver/target.h
trunk/coregrind/m_syswrap/syswrap-main.c
trunk/coregrind/pub_core_gdbserver.h
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Fri Jan 22 21:06:23 2016
@@ -26,6 +26,12 @@
"nouserintercepts" can be any non-existing library name).
This new functionality is not implemented for darwin/macosx.
+* New and modified GDB server monitor features:
+
+ - Valgrind's gdbserver now accepts the command 'catch syscall'.
+ Note that you must have a GDB >= 7.11 to use 'catch syscall' with
+ gdbserver.
+
* ==================== FIXED BUGS ====================
The following bugs have been fixed or resolved. Note that "n-i-bz"
Modified: trunk/coregrind/m_gdbserver/m_gdbserver.c
==============================================================================
--- trunk/coregrind/m_gdbserver/m_gdbserver.c (original)
+++ trunk/coregrind/m_gdbserver/m_gdbserver.c Fri Jan 22 21:06:23 2016
@@ -1012,6 +1012,44 @@
}
}
+Bool catching_syscalls = False; // True if catching all or some syscalls.
+/* If catching_syscalls is True, then syscalls_to_catch_size == 0 means
+ to catch all syscalls. Otherwise, it is the size of the syscalls_to_catch
+ array. */
+Int syscalls_to_catch_size = 0;
+Int *syscalls_to_catch;
+static Bool catch_this_syscall (Int sysno)
+{
+ Int i;
+
+ if (syscalls_to_catch_size == 0)
+ return True;
+
+ for (i = 0; i < syscalls_to_catch_size; i++)
+ if (syscalls_to_catch[i] == sysno)
+ return True;
+
+ return False;
+}
+
+void VG_(gdbserver_report_syscall) (Bool before, UWord sysno, ThreadId tid)
+{
+ dlog(4, "VG_(gdbserver_report_syscall) before %d sysno %lu tid %d\n",
+ before, sysno, tid);
+
+ if (UNLIKELY(catching_syscalls)) {
+ if (!remote_connected()) {
+ dlog(2, "not connected => no report\n");
+ }
+
+ if (catch_this_syscall ((Int)sysno)) {
+ /* let gdbserver do some work */
+ gdbserver_syscall_encountered (before, (Int)sysno);
+ call_gdbserver (tid, signal_reason);
+ }
+ }
+}
+
void VG_(gdbserver_exit) (ThreadId tid, VgSchedReturnCode tids_schedretcode)
{
dlog(1, "VG core calling VG_(gdbserver_exit) tid %u will exit\n", tid);
@@ -1022,11 +1060,13 @@
vg_assert (0);
case VgSrc_ExitThread:
case VgSrc_ExitProcess:
- gdbserver_process_exit_encountered ('W', VG_(threads)[tid].os_state.exitcode);
+ gdbserver_process_exit_encountered
+ ('W', VG_(threads)[tid].os_state.exitcode);
call_gdbserver (tid, exit_reason);
break;
case VgSrc_FatalSig:
- gdbserver_process_exit_encountered ('X', VG_(threads)[tid].os_state.fatalsig);
+ gdbserver_process_exit_encountered
+ ('X', VG_(threads)[tid].os_state.fatalsig);
call_gdbserver (tid, exit_reason);
break;
default:
Modified: trunk/coregrind/m_gdbserver/remote-utils.c
==============================================================================
--- trunk/coregrind/m_gdbserver/remote-utils.c (original)
+++ trunk/coregrind/m_gdbserver/remote-utils.c Fri Jan 22 21:06:23 2016
@@ -1154,6 +1154,14 @@
*buf++ = ';';
}
+ if (valgrind_stopped_by_syscall () >= 0) {
+ VG_(sprintf) (buf, "%s:%x;",
+ valgrind_stopped_before_syscall ()
+ ? "syscall_entry" : "syscall_return",
+ valgrind_stopped_by_syscall ());
+ buf += strlen (buf);
+ }
+
while (*regp) {
buf = outreg (find_regno (*regp), buf);
regp ++;
Modified: trunk/coregrind/m_gdbserver/server.c
==============================================================================
--- trunk/coregrind/m_gdbserver/server.c (original)
+++ trunk/coregrind/m_gdbserver/server.c Fri Jan 22 21:06:23 2016
@@ -624,6 +624,52 @@
return;
}
+ if (strcmp ("QCatchSyscalls:0", arg_own_buf) == 0) {
+ dlog (3, "catch syscall all off\n");
+ catching_syscalls = False;
+ write_ok (arg_own_buf);
+ return;
+ }
+
+ const char *q1 = "QCatchSyscalls:1";
+ if (strncmp (q1, arg_own_buf, strlen(q1)) == 0) {
+ Int i;
+ const char *p;
+
+ if (syscalls_to_catch != NULL) {
+ free (syscalls_to_catch);
+ syscalls_to_catch = NULL;
+ }
+ syscalls_to_catch_size = 0;
+ p = arg_own_buf + strlen(q1);
+ while (*p) {
+ if (*p++ == ';')
+ syscalls_to_catch_size++;
+ }
+ if (syscalls_to_catch_size > 0) {
+ CORE_ADDR sysno;
+ char *from, *to;
+
+ syscalls_to_catch = malloc (syscalls_to_catch_size * sizeof (int));
+
+ from = strchr (arg_own_buf, ';') + 1;
+ for (i = 0; i < syscalls_to_catch_size; i++) {
+ to = strchr (from, ';');
+ if (to == NULL)
+ to = arg_own_buf + strlen (arg_own_buf);
+ decode_address (&sysno, from, to - from);
+ syscalls_to_catch[i] = (Int)sysno;
+ dlog(4, "catch syscall sysno %d\n", (int)sysno);
+ from = to;
+ if (*from == ';') from++;
+ }
+ } else
+ dlog (4, "catch syscall all sysno\n");
+ catching_syscalls = True;
+ write_ok (arg_own_buf);
+ return;
+ }
+
if (strncmp ("QPassSignals:", arg_own_buf, 13) == 0) {
int i;
char *from, *to;
@@ -1042,6 +1088,7 @@
strcat (arg_own_buf, ";QStartNoAckMode+");
strcat (arg_own_buf, ";QPassSignals+");
+ strcat (arg_own_buf, ";QCatchSyscalls+");
if (VG_(client_auxv))
strcat (arg_own_buf, ";qXfer:auxv:read+");
Modified: trunk/coregrind/m_gdbserver/server.h
==============================================================================
--- trunk/coregrind/m_gdbserver/server.h (original)
+++ trunk/coregrind/m_gdbserver/server.h Fri Jan 22 21:06:23 2016
@@ -116,6 +116,14 @@
or tid 1 otherwise). */
extern ThreadId vgdb_interrupted_tid;
+/* True if GDB is catching client syscalls. */
+extern Bool catching_syscalls;
+
+/* Size of the syscalls_to_catch. Only useful if catching_syscalls True.
+ syscalls_to_catch_size 0 means all syscalls are caught. */
+extern Int syscalls_to_catch_size;
+extern Int *syscalls_to_catch;
+
/*------------ end of interface to low level gdbserver */
Modified: trunk/coregrind/m_gdbserver/target.c
==============================================================================
--- trunk/coregrind/m_gdbserver/target.c (original)
+++ trunk/coregrind/m_gdbserver/target.c Fri Jan 22 21:06:23 2016
@@ -177,6 +177,26 @@
return vki_signal_to_deliver.si_signo != 0;
}
+static Bool before_syscall;
+static Int sysno_to_report = -1;
+void gdbserver_syscall_encountered (Bool before, Int sysno)
+{
+ before_syscall = before;
+ sysno_to_report = sysno;
+}
+
+Int valgrind_stopped_by_syscall (void)
+{
+ return sysno_to_report;
+}
+
+Bool valgrind_stopped_before_syscall()
+{
+ vg_assert (sysno_to_report >= 0);
+ return before_syscall;
+}
+
+
static unsigned char exit_status_to_report;
static int exit_code_to_report;
void gdbserver_process_exit_encountered (unsigned char status, Int code)
@@ -249,6 +269,12 @@
C2v(stopped_data_address));
VG_(set_watchpoint_stop_address) ((Addr) 0);
}
+ if (valgrind_stopped_by_syscall () >= 0) {
+ dlog(1, "clearing stopped by syscall %d\n",
+ valgrind_stopped_by_syscall ());
+ gdbserver_syscall_encountered (False, -1);
+ }
+
vki_signal_to_deliver.si_signo = resume_info->sig;
/* signal was reported to GDB, GDB told us to resume execution.
So, reset the signal to report to 0. */
Modified: trunk/coregrind/m_gdbserver/target.h
==============================================================================
--- trunk/coregrind/m_gdbserver/target.h (original)
+++ trunk/coregrind/m_gdbserver/target.h Fri Jan 22 21:06:23 2016
@@ -144,11 +144,23 @@
returns 0 otherwise. */
extern CORE_ADDR valgrind_stopped_data_address (void);
+
+/* Inform GDB (if needed) that client is before (or after) syscall sysno.
+ sysno -1 is used to clear the fact that a syscall has been encountered. */
+extern void gdbserver_syscall_encountered (Bool before, Int sysno);
+
+/* >= 0 if valgrind stopped due to syscall, -1 if not stopped due to syscall. */
+extern Int valgrind_stopped_by_syscall (void);
+
+/* if valgrind_stopped_by_syscall() >= 0, tells if stopped before or after
+ syscall. */
+extern Bool valgrind_stopped_before_syscall (void);
+
/* True if gdbserver is single stepping the valgrind process */
-extern Bool valgrind_single_stepping(void);
+extern Bool valgrind_single_stepping (void);
/* Set Valgrind in single stepping mode or not according to Bool. */
-extern void valgrind_set_single_stepping(Bool);
+extern void valgrind_set_single_stepping (Bool);
/* -------------------------------------------------------------------------- */
/* ----------------- Examining/modifying data while stopped ----------------- */
Modified: trunk/coregrind/m_syswrap/syswrap-main.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-main.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-main.c Fri Jan 22 21:06:23 2016
@@ -50,6 +50,7 @@
#include "pub_core_machine.h"
#include "pub_core_mallocfree.h"
#include "pub_core_syswrap.h"
+#include "pub_core_gdbserver.h" // VG_(gdbserver_report_syscall)
#include "priv_types_n_macros.h"
#include "priv_syswrap-main.h"
@@ -1906,6 +1907,9 @@
&layout,
&sci->args, &sci->status, &sci->flags );
+ /* If needed, gdbserver will report syscall entry to GDB */
+ VG_(gdbserver_report_syscall)(True, sysno, tid);
+
/* The pre-handler may have modified:
sci->args
sci->status
@@ -2063,6 +2067,9 @@
if (!(sci->flags & SfNoWriteResult))
putSyscallStatusIntoGuestState( tid, &sci->status, &tst->arch.vex );
+ /* If needed, gdbserver will report syscall return to GDB */
+ VG_(gdbserver_report_syscall)(False, sysno, tid);
+
/* Situation now:
- the guest state is now correctly modified following the syscall
- modified args, original args and syscall status are still
Modified: trunk/coregrind/pub_core_gdbserver.h
==============================================================================
--- trunk/coregrind/pub_core_gdbserver.h (original)
+++ trunk/coregrind/pub_core_gdbserver.h Fri Jan 22 21:06:23 2016
@@ -119,6 +119,13 @@
extern void VG_(gdbserver_report_fatal_signal) (const vki_siginfo_t *info,
ThreadId tid);
+// To be called by core before and after a client syscall.
+// If GDB has asked to observe the syscall, control will be given to GDB.
+// When Before is True, it is a report before the syscall,
+// False means a report after the syscall.
+extern void VG_(gdbserver_report_syscall) (Bool before, UWord sysno,
+ ThreadId tid);
+
/* Entry point invoked by scheduler.c to execute the request
VALGRIND_CLIENT_MONITOR_COMMAND.
Returns True if command was not recognised. */
|
|
From: <sv...@va...> - 2016-01-22 15:14:23
|
Author: mjw
Date: Fri Jan 22 15:14:16 2016
New Revision: 15769
Log:
Squash GCC warning in none/tests/arm/v6media.c
v6media.c: In function ‘gen_cin’:
v6media.c:10:12: warning: type of ‘cin’ defaults to ‘int’ [-Wimplicit-int]
static int gen_cin(cin)
Just make the argument an int.
Modified:
trunk/none/tests/arm/v6media.c
Modified: trunk/none/tests/arm/v6media.c
==============================================================================
--- trunk/none/tests/arm/v6media.c (original)
+++ trunk/none/tests/arm/v6media.c Fri Jan 22 15:14:16 2016
@@ -7,7 +7,7 @@
#include <stdio.h>
-static int gen_cin(cin)
+static int gen_cin(int cin)
{
int r = ((cin & 1) ? (1<<29) : 0);
//r |= (1 << 31) | (1 << 30);
|
|
From: <sv...@va...> - 2016-01-22 13:49:29
|
Author: mjw
Date: Fri Jan 22 13:49:22 2016
New Revision: 15768
Log:
Squash glibc warning about _BSD_SOURCE being deprecated tests.
glibc 2.20 deprecated _BSD_SOURCE and _SVID_SOURCE and now requires
_DEFAULT_SOURCE to be defined instead. Add _DEFAULT_SOURCE define to
prevent warnings like:
In file included from /usr/include/stdio.h:27:0,
from stack_switch.c:5:
/usr/include/features.h:148:3: warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp]
# warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
^
See https://sourceware.org/glibc/wiki/Release/2.20#Packaging_Changes
Modified:
trunk/memcheck/tests/linux/stack_switch.c
Modified: trunk/memcheck/tests/linux/stack_switch.c
==============================================================================
--- trunk/memcheck/tests/linux/stack_switch.c (original)
+++ trunk/memcheck/tests/linux/stack_switch.c Fri Jan 22 13:49:22 2016
@@ -1,5 +1,11 @@
#define _XOPEN_SOURCE 600
+
+/* Legacy feature macro. */
#define _BSD_SOURCE
+/* New feature macro, always define to squash warning about _BSD_SOURCE
+ with glibc 2.20+. */
+#define _DEFAULT_SOURCE 1
+
#define _GNU_SOURCE
#include <stdio.h>
|
|
From: <sv...@va...> - 2016-01-22 13:42:56
|
Author: mjw
Date: Fri Jan 22 13:42:47 2016
New Revision: 15767
Log:
Squash deprecation warnings from GCC in mpi wrapper code.
We wrap some deprecated things in libmpiwrap. Since we do want to keep
wrapping those add -Wno-deprecated-declarations to squash warnings like:
libmpiwrap.c:281:4: warning: ‘ompi_mpi_ub’ is deprecated: MPI_UB is deprecated in MPI-2.0 [-Wdeprecated-declarations]
Modified:
trunk/mpi/Makefile.am
Modified: trunk/mpi/Makefile.am
==============================================================================
--- trunk/mpi/Makefile.am (original)
+++ trunk/mpi/Makefile.am Fri Jan 22 13:42:47 2016
@@ -52,14 +52,14 @@
libmpiwrap_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_SOURCES = libmpiwrap.c
libmpiwrap_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_CPPFLAGS = -I$(top_srcdir)/include
libmpiwrap_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_CFLAGS = \
- $(CFLAGS_MPI) $(MPI_FLAG_M3264_PRI)
+ $(CFLAGS_MPI) $(MPI_FLAG_M3264_PRI) -Wno-deprecated-declarations
libmpiwrap_@VGCONF_ARCH_PRI@_@VGCONF_OS@_so_LDFLAGS = $(LDFLAGS_MPI)
endif
if BUILD_MPIWRAP_SEC
libmpiwrap_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_SOURCES = libmpiwrap.c
libmpiwrap_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_CPPFLAGS = -I$(top_srcdir)/include
libmpiwrap_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_CFLAGS = \
- $(CFLAGS_MPI) $(MPI_FLAG_M3264_SEC)
+ $(CFLAGS_MPI) $(MPI_FLAG_M3264_SEC) -Wno-deprecated-declarations
libmpiwrap_@VGCONF_ARCH_SEC@_@VGCONF_OS@_so_LDFLAGS = $(LDFLAGS_MPI)
endif
|