You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
1
(17) |
2
(11) |
3
(6) |
4
(6) |
|
5
(10) |
6
(5) |
7
(3) |
8
(7) |
9
(4) |
10
(4) |
11
(3) |
|
12
(3) |
13
(17) |
14
(18) |
15
(32) |
16
(22) |
17
(18) |
18
(10) |
|
19
(4) |
20
(3) |
21
(8) |
22
(15) |
23
(32) |
24
(28) |
25
(18) |
|
26
(20) |
27
(16) |
28
(28) |
29
(28) |
30
(27) |
|
|
|
From: <sv...@va...> - 2009-04-08 15:06:43
|
Author: tom
Date: 2009-04-08 16:06:34 +0100 (Wed, 08 Apr 2009)
New Revision: 9520
Log:
Handle DW_CFA_same_value opcodes in DWARF CFI data.
Modified:
trunk/coregrind/m_debuginfo/readdwarf.c
Modified: trunk/coregrind/m_debuginfo/readdwarf.c
===================================================================
--- trunk/coregrind/m_debuginfo/readdwarf.c 2009-04-05 11:02:29 UTC (rev 9519)
+++ trunk/coregrind/m_debuginfo/readdwarf.c 2009-04-08 15:06:34 UTC (rev 9520)
@@ -2912,6 +2912,17 @@
VG_(printf)(" rci:DW_CFA_undefined\n");
break;
+ case DW_CFA_same_value:
+ reg = read_leb128( &instr[i], &nleb, 0);
+ i += nleb;
+ if (reg < 0 || reg >= N_CFI_REGS)
+ return 0; /* fail */
+ ctx->reg[reg].tag = RR_Same;
+ ctx->reg[reg].arg = 0;
+ if (di->ddump_frames)
+ VG_(printf)(" rci:DW_CFA_same_value\n");
+ break;
+
case DW_CFA_GNU_args_size:
/* No idea what is supposed to happen. gdb-6.3 simply
ignores these. */
|
|
From: Konstantin S. <kon...@gm...> - 2009-04-08 14:25:21
|
On Wed, Apr 8, 2009 at 2:07 PM, Nicholas Nethercote <n.n...@gm...> wrote: > On Wed, Apr 8, 2009 at 2:20 AM, Konstantin Serebryany > <kon...@gm...> wrote: >> >> Memcheck has client requests such as VALGRIND_MAKE_MEM_DEFINED(mem, size). >> These requests mark memory as initialized (i.e. safe to read). >> But there is no annotation that marks a specific memory access as safe. >> Is that not included intentionally? If yes, what was the reason? >> If no, do you mind to include such request(s)? > > I think the reason is that nobody has required them until now. > > I've previously thought about them in one context, involving more > aggressive checking by Memcheck of a program. Imagine you have a data > structure that should only be accessed through a small number of > access functions. You could mark the data structure as unaddressable, > and then wrap the accesses within the access functions with such > annotations. That way you would immediately know if any other part of > your program accessed the data structure not via those access > functions, which could be due to (a) failure to observe the access > function discipline, or (b) corrupted pointers or similar. > > I thought about doing this by marking the memory as > addressable-and-defined, doing the read/write, then marking it > unaddressable again, but your approach is more efficient. So I can see > these annotations would be useful. Here's an attempt at what they > would look like: > > // Memcheck normally checks that you do not read unaddressable or > // addressable-but-undefined memory. This wrapper causes that > // check to be omitted. > VALGRIND_UNCHECKED_MEM_READ(mem) > > // Memcheck normally checks that you do not write unaddressable memory. > // This wrapper causes that check to be omitted. > VALGRIND_UNCHECKED_MEM_WRITE(mem) In addition to these, we may want to have a BEGIN/END form, for the cases when the access happens in a routine which we can not annotate or which may be used in other contexts. VALGRIND_IGNORE_READS_BEGIN() external_function(pointer_to_uninitialized_but_safe_to_use_memory) VALGRIND_IGNORE_READS_END() > > >> Example: >> >> int *p = (int*)malloc(100); >> // p is 4-aligned and not initialized > > Not quite. p is 4-aligned and initialized. *p is unitialized. ah, yes. --kcc |
|
From: Nicholas N. <n.n...@gm...> - 2009-04-08 10:07:55
|
On Wed, Apr 8, 2009 at 2:20 AM, Konstantin Serebryany <kon...@gm...> wrote: > > Memcheck has client requests such as VALGRIND_MAKE_MEM_DEFINED(mem, size). > These requests mark memory as initialized (i.e. safe to read). > But there is no annotation that marks a specific memory access as safe. > Is that not included intentionally? If yes, what was the reason? > If no, do you mind to include such request(s)? I think the reason is that nobody has required them until now. I've previously thought about them in one context, involving more aggressive checking by Memcheck of a program. Imagine you have a data structure that should only be accessed through a small number of access functions. You could mark the data structure as unaddressable, and then wrap the accesses within the access functions with such annotations. That way you would immediately know if any other part of your program accessed the data structure not via those access functions, which could be due to (a) failure to observe the access function discipline, or (b) corrupted pointers or similar. I thought about doing this by marking the memory as addressable-and-defined, doing the read/write, then marking it unaddressable again, but your approach is more efficient. So I can see these annotations would be useful. Here's an attempt at what they would look like: // Memcheck normally checks that you do not read unaddressable or // addressable-but-undefined memory. This wrapper causes that // check to be omitted. VALGRIND_UNCHECKED_MEM_READ(mem) // Memcheck normally checks that you do not write unaddressable memory. // This wrapper causes that check to be omitted. VALGRIND_UNCHECKED_MEM_WRITE(mem) > Example: > > int *p = (int*)malloc(100); > // p is 4-aligned and not initialized Not quite. p is 4-aligned and initialized. *p is unitialized. Nick |
|
From: Bart V. A. <bar...@gm...> - 2009-04-08 08:21:18
|
Nightly build on georgia-tech-cellbuzz-native ( cellbuzz, ppc64, Fedora 7, native ) started at 2009-04-08 02:00:01 EDT Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 407 tests, 36 stderr failures, 9 stdout failures, 0 post failures == exp-ptrcheck/tests/bad_percentify (stderr) exp-ptrcheck/tests/base (stderr) exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/fp (stderr) exp-ptrcheck/tests/globalerr (stderr) exp-ptrcheck/tests/hackedbz2 (stderr) exp-ptrcheck/tests/hp_bounds (stderr) exp-ptrcheck/tests/hp_dangle (stderr) exp-ptrcheck/tests/justify (stderr) exp-ptrcheck/tests/partial_bad (stderr) exp-ptrcheck/tests/partial_good (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) exp-ptrcheck/tests/realloc (stderr) exp-ptrcheck/tests/stackerr (stderr) exp-ptrcheck/tests/strcpy (stderr) exp-ptrcheck/tests/supp (stderr) exp-ptrcheck/tests/tricky (stderr) exp-ptrcheck/tests/unaligned (stderr) exp-ptrcheck/tests/zero (stderr) helgrind/tests/hg05_race2 (stderr) memcheck/tests/deep_templates (stdout) memcheck/tests/leak-cases-full (stderr) memcheck/tests/leak-cases-summary (stderr) memcheck/tests/leak-cycle (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/varinfo1 (stderr) memcheck/tests/varinfo2 (stderr) memcheck/tests/varinfo3 (stderr) memcheck/tests/varinfo4 (stderr) memcheck/tests/varinfo5 (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/wrap8 (stderr) none/tests/linux/mremap (stderr) none/tests/linux/mremap2 (stdout) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/jm-vmx (stdout) none/tests/ppc32/round (stdout) none/tests/ppc32/test_gx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/jm-vmx (stdout) none/tests/ppc64/round (stdout) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 407 tests, 37 stderr failures, 9 stdout failures, 0 post failures == drd/tests/pth_create_chain (stderr) exp-ptrcheck/tests/bad_percentify (stderr) exp-ptrcheck/tests/base (stderr) exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/fp (stderr) exp-ptrcheck/tests/globalerr (stderr) exp-ptrcheck/tests/hackedbz2 (stderr) exp-ptrcheck/tests/hp_bounds (stderr) exp-ptrcheck/tests/hp_dangle (stderr) exp-ptrcheck/tests/justify (stderr) exp-ptrcheck/tests/partial_bad (stderr) exp-ptrcheck/tests/partial_good (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) exp-ptrcheck/tests/realloc (stderr) exp-ptrcheck/tests/stackerr (stderr) exp-ptrcheck/tests/strcpy (stderr) exp-ptrcheck/tests/supp (stderr) exp-ptrcheck/tests/tricky (stderr) exp-ptrcheck/tests/unaligned (stderr) exp-ptrcheck/tests/zero (stderr) helgrind/tests/hg05_race2 (stderr) memcheck/tests/deep_templates (stdout) memcheck/tests/leak-cases-full (stderr) memcheck/tests/leak-cases-summary (stderr) memcheck/tests/leak-cycle (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/varinfo1 (stderr) memcheck/tests/varinfo2 (stderr) memcheck/tests/varinfo3 (stderr) memcheck/tests/varinfo4 (stderr) memcheck/tests/varinfo5 (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/wrap8 (stderr) none/tests/linux/mremap (stderr) none/tests/linux/mremap2 (stdout) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/jm-vmx (stdout) none/tests/ppc32/round (stdout) none/tests/ppc32/test_gx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/jm-vmx (stdout) none/tests/ppc64/round (stdout) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Wed Apr 8 03:10:25 2009 --- new.short Wed Apr 8 04:21:05 2009 *************** *** 8,11 **** ! == 407 tests, 37 stderr failures, 9 stdout failures, 0 post failures == ! drd/tests/pth_create_chain (stderr) exp-ptrcheck/tests/bad_percentify (stderr) --- 8,10 ---- ! == 407 tests, 36 stderr failures, 9 stdout failures, 0 post failures == exp-ptrcheck/tests/bad_percentify (stderr) |
|
From: Konstantin S. <kon...@gm...> - 2009-04-08 07:20:43
|
Hello valgrind developers,
Memcheck has client requests such as VALGRIND_MAKE_MEM_DEFINED(mem, size).
These requests mark memory as initialized (i.e. safe to read).
But there is no annotation that marks a specific memory access as safe.
Is that not included intentionally? If yes, what was the reason?
If no, do you mind to include such request(s)?
Example:
int *p = (int*)malloc(100);
// p is 4-aligned and not initialized
if (...) {
p[0] = '\0';
} else {
p[0] = 'h';
p[1] = 't';
p[2] = 't';
p[3] = 'p';
}
...
// here we read 4 first bytes of p.
// bytes p[1],p[2],p[3] may not be initialized, but this is safe, because
// in this case p[0] will not be equal to 'h'.
int first_four_bytes_of_p = ANNOTATE_SAFE_READ(*(int*)p); //
<<<<<<<<<<<< new client request
if (first_four_bytes_of_p == combine_four_chars_into_int("http")) ...
In ThreadSanitizer we have both kinds of requests (we call them annotations):
1. annotations that apply to memory location. E.g.
ANNOTATE_BENIGN_RACE(mem) or ANNOTATE_NEW_MEMORY(mem, size)
2. annotations that apply to memory access. E.g.
ANNOTATE_UNPROTECTED_READ(mem) or ANNOTATE_IGNORE_READS_BEGIN/END
See http://code.google.com/p/google-perftools/source/browse/trunk/src/base/dynamic_annotations.h
Comments?
--kcc
|
|
From: Tom H. <th...@cy...> - 2009-04-08 03:04:33
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2009-04-08 03:05:09 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 == 478 tests, 4 stderr failures, 0 stdout failures, 0 post failures == exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) |
|
From: Tom H. <th...@cy...> - 2009-04-08 02:47:56
|
Nightly build on mg ( x86_64, Fedora 9 ) started at 2009-04-08 03:10:05 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 484 tests, 4 stderr failures, 1 stdout failure, 0 post failures == exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) none/tests/linux/mremap2 (stdout) |