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) |
4
(5) |
5
(5) |
6
(3) |
7
|
8
|
|
9
|
10
(8) |
11
(13) |
12
(12) |
13
(1) |
14
(1) |
15
(5) |
|
16
|
17
(12) |
18
(7) |
19
(5) |
20
|
21
(11) |
22
(8) |
|
23
(8) |
24
(6) |
25
|
26
(2) |
27
(3) |
28
(9) |
29
|
|
30
|
31
(5) |
|
|
|
|
|
|
From: <sv...@va...> - 2011-01-27 23:56:44
|
Author: sewardj
Date: 2011-01-27 23:56:36 +0000 (Thu, 27 Jan 2011)
New Revision: 11513
Log:
Somewhat reduce the amount of mempool sanity checking, so as to avoid
rendering the mempool machinery impossibly slow for pools containing
many blocks. Fixes #255966.
Modified:
trunk/memcheck/mc_malloc_wrappers.c
Modified: trunk/memcheck/mc_malloc_wrappers.c
===================================================================
--- trunk/memcheck/mc_malloc_wrappers.c 2011-01-27 23:17:58 UTC (rev 11512)
+++ trunk/memcheck/mc_malloc_wrappers.c 2011-01-27 23:56:36 UTC (rev 11513)
@@ -491,6 +491,13 @@
/*--- Memory pool stuff. ---*/
/*------------------------------------------------------------*/
+/* Set to 1 for intensive sanity checking. Is very expensive though
+ and should not be used in production scenarios. See #255966. */
+#define MP_DETAILED_SANITY_CHECKS 0
+
+static void check_mempool_sane(MC_Mempool* mp); /*forward*/
+
+
void MC_(create_mempool)(Addr pool, UInt rzB, Bool is_zeroed)
{
MC_Mempool* mp;
@@ -512,6 +519,7 @@
mp->rzB = rzB;
mp->is_zeroed = is_zeroed;
mp->chunks = VG_(HT_construct)( "MC_(create_mempool)" );
+ check_mempool_sane(mp);
/* Paranoia ... ensure this area is off-limits to the client, so
the mp->data field isn't visible to the leak checker. If memory
@@ -543,6 +551,7 @@
MC_(record_illegal_mempool_error) ( tid, pool );
return;
}
+ check_mempool_sane(mp);
// Clean up the chunks, one by one
VG_(HT_ResetIter)(mp->chunks);
@@ -657,10 +666,10 @@
if (mp == NULL) {
MC_(record_illegal_mempool_error) ( tid, pool );
} else {
- check_mempool_sane(mp);
+ if (MP_DETAILED_SANITY_CHECKS) check_mempool_sane(mp);
MC_(new_block)(tid, addr, szB, /*ignored*/0, mp->is_zeroed,
MC_AllocCustom, mp->chunks);
- check_mempool_sane(mp);
+ if (MP_DETAILED_SANITY_CHECKS) check_mempool_sane(mp);
}
}
@@ -681,7 +690,7 @@
VG_(get_and_pp_StackTrace) (tid, MEMPOOL_DEBUG_STACKTRACE_DEPTH);
}
- check_mempool_sane(mp);
+ if (MP_DETAILED_SANITY_CHECKS) check_mempool_sane(mp);
mc = VG_(HT_remove)(mp->chunks, (UWord)addr);
if (mc == NULL) {
MC_(record_free_error)(tid, (Addr)addr);
@@ -695,7 +704,7 @@
}
die_and_free_mem ( tid, mc, mp->rzB );
- check_mempool_sane(mp);
+ if (MP_DETAILED_SANITY_CHECKS) check_mempool_sane(mp);
}
@@ -754,7 +763,7 @@
if (VG_(HT_remove)(mp->chunks, (UWord)mc->data) == NULL) {
MC_(record_free_error)(tid, (Addr)mc->data);
VG_(free)(chunks);
- check_mempool_sane(mp);
+ if (MP_DETAILED_SANITY_CHECKS) check_mempool_sane(mp);
return;
}
die_and_free_mem ( tid, mc, mp->rzB );
@@ -769,7 +778,7 @@
if (VG_(HT_remove)(mp->chunks, (UWord)mc->data) == NULL) {
MC_(record_free_error)(tid, (Addr)mc->data);
VG_(free)(chunks);
- check_mempool_sane(mp);
+ if (MP_DETAILED_SANITY_CHECKS) check_mempool_sane(mp);
return;
}
|
|
From: <sv...@va...> - 2011-01-27 23:18:08
|
Author: njn
Date: 2011-01-27 23:17:58 +0000 (Thu, 27 Jan 2011)
New Revision: 11512
Log:
Merge from trunk, r11511 (fix threshold printing in Massif).
Modified:
branches/VALGRIND_3_6_BRANCH/massif/ms_main.c
branches/VALGRIND_3_6_BRANCH/massif/tests/insig.post.exp
branches/VALGRIND_3_6_BRANCH/massif/tests/insig.vgtest
Modified: branches/VALGRIND_3_6_BRANCH/massif/ms_main.c
===================================================================
--- branches/VALGRIND_3_6_BRANCH/massif/ms_main.c 2011-01-27 23:07:56 UTC (rev 11511)
+++ branches/VALGRIND_3_6_BRANCH/massif/ms_main.c 2011-01-27 23:17:58 UTC (rev 11512)
@@ -2106,14 +2106,11 @@
})
// Nb: uses a static buffer, each call trashes the last string returned.
-static Char* make_perc(ULong x, ULong y)
+static Char* make_perc(double x)
{
static Char mbuf[32];
-// tl_assert(x <= y); XXX; put back in later...
-
- // XXX: I'm not confident that VG_(percentify) works as it should...
- VG_(percentify)(x, y, 2, 6, mbuf);
+ VG_(percentify)((ULong)(x * 100), 10000, 2, 6, mbuf);
// XXX: this is bogus if the denominator was zero -- resulting string is
// something like "0 --%")
if (' ' == mbuf[0]) mbuf[0] = '0';
@@ -2239,7 +2236,7 @@
Char* s = ( 1 == sxpt->Insig.n_xpts ? "," : "s, all" );
FP("%sn0: %lu in %d place%s below massif's threshold (%s)\n",
depth_str, sxpt->szB, sxpt->Insig.n_xpts, s,
- make_perc((ULong)clo_threshold, 100));
+ make_perc(clo_threshold));
break;
}
Modified: branches/VALGRIND_3_6_BRANCH/massif/tests/insig.post.exp
===================================================================
--- branches/VALGRIND_3_6_BRANCH/massif/tests/insig.post.exp 2011-01-27 23:07:56 UTC (rev 11511)
+++ branches/VALGRIND_3_6_BRANCH/massif/tests/insig.post.exp 2011-01-27 23:17:58 UTC (rev 11512)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./insig
-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
+Massif arguments: --stacks=no --time-unit=B --heap-admin=128 --massif-out-file=massif.out --threshold=0.99 --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
--------------------------------------------------------------------------------
@@ -70,7 +70,7 @@
87.28% (16,688B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
->83.68% (16,000B) 0x........: main (insig.c:8)
|
-->01.34% (256B) in 16 places, all below massif's threshold (01.00%)
+->01.34% (256B) in 16 places, all below massif's threshold (00.99%)
|
->01.26% (240B) 0x........: main (insig.c:9)
|
Modified: branches/VALGRIND_3_6_BRANCH/massif/tests/insig.vgtest
===================================================================
--- branches/VALGRIND_3_6_BRANCH/massif/tests/insig.vgtest 2011-01-27 23:07:56 UTC (rev 11511)
+++ branches/VALGRIND_3_6_BRANCH/massif/tests/insig.vgtest 2011-01-27 23:17:58 UTC (rev 11512)
@@ -1,5 +1,6 @@
+# At one point, thresholds less than 1.0% were misprinted as 00.00%, so test that here.
prog: insig
-vgopts: --stacks=no --time-unit=B --heap-admin=128 --massif-out-file=massif.out
+vgopts: --stacks=no --time-unit=B --heap-admin=128 --massif-out-file=massif.out --threshold=0.99
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
|
|
From: <sv...@va...> - 2011-01-27 23:08:05
|
Author: njn
Date: 2011-01-27 23:07:56 +0000 (Thu, 27 Jan 2011)
New Revision: 11511
Log:
If Massif's --threshold value was less than 1.0, in lines like this:
->00.00% (0B) in 11 places, all below massif's threshold (00.00%)
the threshold would always be incorrectly printed as 00.00%. This was
because the percentage printing was broken for percentages less than 1.0.
This change fixes this problem, and modifies a test to check for it.
Modified:
trunk/massif/ms_main.c
trunk/massif/tests/insig.post.exp
trunk/massif/tests/insig.vgtest
Modified: trunk/massif/ms_main.c
===================================================================
--- trunk/massif/ms_main.c 2011-01-23 20:47:26 UTC (rev 11510)
+++ trunk/massif/ms_main.c 2011-01-27 23:07:56 UTC (rev 11511)
@@ -2106,14 +2106,11 @@
})
// Nb: uses a static buffer, each call trashes the last string returned.
-static Char* make_perc(ULong x, ULong y)
+static Char* make_perc(double x)
{
static Char mbuf[32];
-// tl_assert(x <= y); XXX; put back in later...
-
- // XXX: I'm not confident that VG_(percentify) works as it should...
- VG_(percentify)(x, y, 2, 6, mbuf);
+ VG_(percentify)((ULong)(x * 100), 10000, 2, 6, mbuf);
// XXX: this is bogus if the denominator was zero -- resulting string is
// something like "0 --%")
if (' ' == mbuf[0]) mbuf[0] = '0';
@@ -2239,7 +2236,7 @@
Char* s = ( 1 == sxpt->Insig.n_xpts ? "," : "s, all" );
FP("%sn0: %lu in %d place%s below massif's threshold (%s)\n",
depth_str, sxpt->szB, sxpt->Insig.n_xpts, s,
- make_perc((ULong)clo_threshold, 100));
+ make_perc(clo_threshold));
break;
}
Modified: trunk/massif/tests/insig.post.exp
===================================================================
--- trunk/massif/tests/insig.post.exp 2011-01-23 20:47:26 UTC (rev 11510)
+++ trunk/massif/tests/insig.post.exp 2011-01-27 23:07:56 UTC (rev 11511)
@@ -1,6 +1,6 @@
--------------------------------------------------------------------------------
Command: ./insig
-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
+Massif arguments: --stacks=no --time-unit=B --heap-admin=128 --massif-out-file=massif.out --threshold=0.99 --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
--------------------------------------------------------------------------------
@@ -70,7 +70,7 @@
87.28% (16,688B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
->83.68% (16,000B) 0x........: main (insig.c:8)
|
-->01.34% (256B) in 16 places, all below massif's threshold (01.00%)
+->01.34% (256B) in 16 places, all below massif's threshold (00.99%)
|
->01.26% (240B) 0x........: main (insig.c:9)
|
Modified: trunk/massif/tests/insig.vgtest
===================================================================
--- trunk/massif/tests/insig.vgtest 2011-01-23 20:47:26 UTC (rev 11510)
+++ trunk/massif/tests/insig.vgtest 2011-01-27 23:07:56 UTC (rev 11511)
@@ -1,5 +1,6 @@
+# At one point, thresholds less than 1.0% were misprinted as 00.00%, so test that here.
prog: insig
-vgopts: --stacks=no --time-unit=B --heap-admin=128 --massif-out-file=massif.out
+vgopts: --stacks=no --time-unit=B --heap-admin=128 --massif-out-file=massif.out --threshold=0.99
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
|