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
(13) |
2
(15) |
|
3
(16) |
4
(42) |
5
(9) |
6
(20) |
7
(22) |
8
(24) |
9
(12) |
|
10
(24) |
11
(11) |
12
(2) |
13
(13) |
14
(8) |
15
|
16
(16) |
|
17
(24) |
18
(36) |
19
(100) |
20
(94) |
21
(50) |
22
(39) |
23
(10) |
|
24
(14) |
25
(19) |
26
(2) |
27
(6) |
28
(17) |
29
(9) |
30
(8) |
|
31
(21) |
|
|
|
|
|
|
Author: bart Date: 2009-05-30 20:15:34 +0100 (Sat, 30 May 2009) New Revision: 10171 Log: svn merge -r10106:10170 svn://svn.valgrind.org/valgrind/trunk . Added: branches/DRDDEV/coregrind/launcher-darwin.c branches/DRDDEV/coregrind/m_coredump/coredump-amd64-darwin.c branches/DRDDEV/coregrind/m_coredump/coredump-x86-darwin.c branches/DRDDEV/coregrind/m_debuginfo/priv_readmacho.h branches/DRDDEV/coregrind/m_debuginfo/readmacho.c branches/DRDDEV/coregrind/m_dispatch/dispatch-amd64-darwin.S branches/DRDDEV/coregrind/m_dispatch/dispatch-x86-darwin.S branches/DRDDEV/coregrind/m_initimg/initimg-darwin.c branches/DRDDEV/coregrind/m_mach/ branches/DRDDEV/coregrind/m_sigframe/sigframe-amd64-darwin.c branches/DRDDEV/coregrind/m_sigframe/sigframe-x86-darwin.c branches/DRDDEV/coregrind/m_start-amd64-darwin.S branches/DRDDEV/coregrind/m_start-x86-darwin.S branches/DRDDEV/coregrind/m_syswrap/priv_syswrap-darwin.h branches/DRDDEV/coregrind/m_syswrap/syscall-amd64-darwin.S branches/DRDDEV/coregrind/m_syswrap/syscall-x86-darwin.S branches/DRDDEV/coregrind/m_syswrap/syswrap-amd64-darwin.c branches/DRDDEV/coregrind/m_syswrap/syswrap-darwin.c branches/DRDDEV/coregrind/m_syswrap/syswrap-x86-darwin.c branches/DRDDEV/coregrind/m_ume/macho.c branches/DRDDEV/coregrind/pub_core_mach.h branches/DRDDEV/darwin9.supp branches/DRDDEV/docs/internals/Darwin-notes.txt branches/DRDDEV/drd/tests/tsan_thread_wrappers_pthread.h branches/DRDDEV/drd/tests/tsan_unittest.cpp branches/DRDDEV/include/vki/vki-darwin.h branches/DRDDEV/include/vki/vki-scnums-darwin.h branches/DRDDEV/memcheck/tests/darwin/ branches/DRDDEV/memcheck/tests/origin1-yes.stderr.exp-darwin branches/DRDDEV/memcheck/tests/sigkill.stderr.exp-darwin branches/DRDDEV/memcheck/tests/strchr.stderr.exp-darwin branches/DRDDEV/none/tests/darwin/ Modified: branches/DRDDEV/Makefile.am branches/DRDDEV/Makefile.core-tool.am branches/DRDDEV/Makefile.flags.am branches/DRDDEV/Makefile.tool-tests.am branches/DRDDEV/Makefile.tool.am branches/DRDDEV/NEWS branches/DRDDEV/auxprogs/Makefile.am branches/DRDDEV/cachegrind/Makefile.am branches/DRDDEV/cachegrind/cg_main.c branches/DRDDEV/cachegrind/tests/Makefile.am branches/DRDDEV/callgrind/Makefile.am branches/DRDDEV/callgrind/clo.c branches/DRDDEV/configure.in branches/DRDDEV/coregrind/Makefile.am branches/DRDDEV/coregrind/m_aspacemgr/aspacemgr-common.c branches/DRDDEV/coregrind/m_aspacemgr/aspacemgr-linux.c branches/DRDDEV/coregrind/m_debugger.c branches/DRDDEV/coregrind/m_debuginfo/d3basics.c branches/DRDDEV/coregrind/m_debuginfo/debuginfo.c branches/DRDDEV/coregrind/m_debuginfo/priv_storage.h branches/DRDDEV/coregrind/m_debuginfo/readdwarf.c branches/DRDDEV/coregrind/m_debuginfo/readdwarf3.c branches/DRDDEV/coregrind/m_debuginfo/readstabs.c branches/DRDDEV/coregrind/m_debuginfo/storage.c branches/DRDDEV/coregrind/m_debuglog.c branches/DRDDEV/coregrind/m_initimg/initimg-linux.c branches/DRDDEV/coregrind/m_libcassert.c branches/DRDDEV/coregrind/m_libcbase.c branches/DRDDEV/coregrind/m_libcfile.c branches/DRDDEV/coregrind/m_libcproc.c branches/DRDDEV/coregrind/m_libcsignal.c branches/DRDDEV/coregrind/m_machine.c branches/DRDDEV/coregrind/m_main.c branches/DRDDEV/coregrind/m_mallocfree.c branches/DRDDEV/coregrind/m_options.c branches/DRDDEV/coregrind/m_redir.c branches/DRDDEV/coregrind/m_replacemalloc/vg_replace_malloc.c branches/DRDDEV/coregrind/m_scheduler/priv_sema.h branches/DRDDEV/coregrind/m_scheduler/scheduler.c branches/DRDDEV/coregrind/m_scheduler/sema.c branches/DRDDEV/coregrind/m_signals.c branches/DRDDEV/coregrind/m_stacktrace.c branches/DRDDEV/coregrind/m_syscall.c branches/DRDDEV/coregrind/m_syswrap/priv_syswrap-main.h branches/DRDDEV/coregrind/m_syswrap/priv_types_n_macros.h branches/DRDDEV/coregrind/m_syswrap/syswrap-generic.c branches/DRDDEV/coregrind/m_syswrap/syswrap-main.c branches/DRDDEV/coregrind/m_trampoline.S branches/DRDDEV/coregrind/m_translate.c branches/DRDDEV/coregrind/m_ume/elf.c branches/DRDDEV/coregrind/m_ume/main.c branches/DRDDEV/coregrind/m_ume/priv_ume.h branches/DRDDEV/coregrind/m_vki.c branches/DRDDEV/coregrind/pub_core_aspacemgr.h branches/DRDDEV/coregrind/pub_core_debuginfo.h branches/DRDDEV/coregrind/pub_core_initimg.h branches/DRDDEV/coregrind/pub_core_machine.h branches/DRDDEV/coregrind/pub_core_mallocfree.h branches/DRDDEV/coregrind/pub_core_options.h branches/DRDDEV/coregrind/pub_core_scheduler.h branches/DRDDEV/coregrind/pub_core_syscall.h branches/DRDDEV/coregrind/pub_core_syswrap.h branches/DRDDEV/coregrind/pub_core_threadstate.h branches/DRDDEV/coregrind/pub_core_trampoline.h branches/DRDDEV/coregrind/pub_core_ume.h branches/DRDDEV/coregrind/pub_core_vkiscnums.h branches/DRDDEV/coregrind/vg_preloaded.c branches/DRDDEV/docs/internals/Makefile.am branches/DRDDEV/drd/Makefile.am branches/DRDDEV/drd/drd_main.c branches/DRDDEV/drd/drd_pthread_intercepts.c branches/DRDDEV/drd/tests/recursive_mutex.c branches/DRDDEV/exp-omega/Makefile.am branches/DRDDEV/exp-ptrcheck/Makefile.am branches/DRDDEV/exp-ptrcheck/h_main.c branches/DRDDEV/exp-ptrcheck/pc_main.c branches/DRDDEV/exp-ptrcheck/tests/Makefile.am branches/DRDDEV/glibc-2.34567-NPTL-helgrind.supp branches/DRDDEV/helgrind/Makefile.am branches/DRDDEV/helgrind/hg_intercepts.c branches/DRDDEV/helgrind/hg_main.c branches/DRDDEV/helgrind/tests/Makefile.am branches/DRDDEV/helgrind/tests/tc20_verifywrap.c branches/DRDDEV/include/pub_tool_basics.h branches/DRDDEV/include/pub_tool_basics_asm.h branches/DRDDEV/include/pub_tool_libcbase.h branches/DRDDEV/include/pub_tool_libcfile.h branches/DRDDEV/include/pub_tool_machine.h branches/DRDDEV/include/pub_tool_redir.h branches/DRDDEV/include/pub_tool_tooliface.h branches/DRDDEV/include/pub_tool_vki.h branches/DRDDEV/include/pub_tool_vkiscnums.h branches/DRDDEV/include/valgrind.h branches/DRDDEV/include/vki/Makefile.am branches/DRDDEV/lackey/Makefile.am branches/DRDDEV/massif/Makefile.am branches/DRDDEV/massif/ms_main.c branches/DRDDEV/massif/tests/malloc_usable.c branches/DRDDEV/memcheck/Makefile.am branches/DRDDEV/memcheck/mc_errors.c branches/DRDDEV/memcheck/mc_machine.c branches/DRDDEV/memcheck/mc_main.c branches/DRDDEV/memcheck/mc_replace_strmem.c branches/DRDDEV/memcheck/tests/Makefile.am branches/DRDDEV/memcheck/tests/amd64/Makefile.am branches/DRDDEV/memcheck/tests/badjump2.c branches/DRDDEV/memcheck/tests/linux/Makefile.am branches/DRDDEV/memcheck/tests/malloc_usable.c branches/DRDDEV/memcheck/tests/memalign2.c branches/DRDDEV/memcheck/tests/nanoleak2.c branches/DRDDEV/memcheck/tests/nanoleak2.vgtest branches/DRDDEV/memcheck/tests/origin1-yes.c branches/DRDDEV/memcheck/tests/origin1-yes.stderr.exp branches/DRDDEV/memcheck/tests/stack_changes.c branches/DRDDEV/memcheck/tests/str_tester.c branches/DRDDEV/memcheck/tests/x86/Makefile.am branches/DRDDEV/none/Makefile.am branches/DRDDEV/none/tests/Makefile.am branches/DRDDEV/none/tests/amd64/Makefile.am branches/DRDDEV/none/tests/pth_atfork1.c branches/DRDDEV/none/tests/x86/Makefile.am branches/DRDDEV/tests/Makefile.am branches/DRDDEV/tests/arch_test.c branches/DRDDEV/tests/asm.h branches/DRDDEV/tests/filter_libc branches/DRDDEV/tests/malloc.h branches/DRDDEV/tests/os_test.c branches/DRDDEV/tests/platform_test branches/DRDDEV/tests/sys_mman.h branches/DRDDEV/tests/x86_amd64_features.c [... diff too large to include ...] |
|
From: Bart V. A. <bar...@gm...> - 2009-05-30 19:13:03
|
On Fri, May 29, 2009 at 12:58 PM, Konstantin Serebryany <kon...@gm...> wrote: > Do you plan to support annotations (aka client requests) in Helgrind > and DRD in a compatible way (and possibly, in a way compatible with > ThreadSanitizer)? > Something like http://code.google.com/p/google-perftools/source/browse/trunk/src/base/dynamic_annotations.h, > or completely different. > Our experience shows that even a pure-happens-before race detector is > completely useless w/o annotations if your code has lock-less > synchronization and hundreds of benign races. Another remark: I suggest to remove the macro's ANNOTATE_CONDVAR_WAIT() and ANNOTATE_CONDVAR_SIGNAL() but to keep their aliases ANNOTATE_HAPPENS_BEFORE() and ANNOTATE_HAPPENS_AFTER(). The names of the first two macro's are really confusing: these two macro's are a.o. used to annotate ordering constraints between mutexes(!) in racecheck_unittest.cc. Bart. |
|
From: <sv...@va...> - 2009-05-30 16:33:19
|
Author: bart Date: 2009-05-30 17:33:10 +0100 (Sat, 30 May 2009) New Revision: 10170 Log: Added a copy of r1007 of the files racecheck_unittest.cc and thread_wrappers_pthread.h. These files have been obtained from the SVN repository http://data-race-test.googlecode.com/svn/trunk/unittest. Added: trunk/drd/tests/tsan_thread_wrappers_pthread.h trunk/drd/tests/tsan_unittest.cpp [... diff too large to include ...] |
|
From: Bart V. A. <bar...@gm...> - 2009-05-30 11:35:41
|
On Fri, May 29, 2009 at 12:58 PM, Konstantin Serebryany <kon...@gm...> wrote: > Do you plan to support annotations (aka client requests) in Helgrind > and DRD in a compatible way (and possibly, in a way compatible with > ThreadSanitizer)? > Something like http://code.google.com/p/google-perftools/source/browse/trunk/src/base/dynamic_annotations.h, > or completely different. > Our experience shows that even a pure-happens-before race detector is > completely useless w/o annotations if your code has lock-less > synchronization and hundreds of benign races. A few remarks about the semantics of the ANNOTATE_* macro's: * I do not really like ANNOTATE_PUBLISH_MEMORY_RANGE. The comment above this macro says more or less that any other thread may access the published memory range safely after it has been published. However, no matter which synchronization instructions have been issued by the publishing thread, a consumer thread may only access the published memory safely after proper synchronization with the publishing thread. So my proposal is to remove this annotation and to use ANNOTATE_MUTEX_IS_USED_AS_CONDVAR instead. * Are the ANNOTATE_PCQ_* macro's really needed ? I could not find any test code for these annotations inside ThreadSanitizer. * A size argument is missing for the ANNOTATE_BENIGN_RACE*(), ANNOTATE_EXPECT_RACE() and ANNOTATE_TRACE_MEMORY() macro's. Do these macro's apply to a single address, a range of four bytes or a range of eight bytes ? Choosing any of these three range sizes for all these macro's won't give the expected semantics for at least one of these macro's. Bart. |
|
From: Bart V. A. <bar...@gm...> - 2009-05-30 11:15:26
|
On Sat, May 30, 2009 at 1:02 PM, Julian Seward <js...@ac...> wrote: > > Ok in principle, but some comments: > >> > Adding support for the ANNOTATE_*() macro's in drd/drd.h is probably >> > not too hard. I'll have a look at it. >> >> Implementation-wise you need to support Annotate*() functions, or >> rewrite ANNOTATE*() macro's using client requests and support those >> client requests. >> I find the approach with Annotate*() functions simpler to maintain. > > I prefer that the basic thing that is implemented and documented to > be the ANNOTATE_* macros, not the Annotate*() functions. The macros > can be implemented with just a header file, like the Memcheck macros. > The functions require shared objects etc and therefore create a > dependency on a new library (IIUC), which isn't desirable. > > There are a lot of these requests, which is a big overhead w.r.t. > verifying that the implementation is correct and keeping it correct. > Are they all really necessary? I wonder if you can implement these > using a smaller subset, based on the idea of sending an abstract message > between threads. > > Suppose you had a > > ANNOTATE_SENDTO_SYNC_OBJECT(address) and > ANNOTATE_RECVFROM_SYNC_OBJECT(address) > > which create a h-b edge through the sync object. How many of these > requests could be implemented using just those two? Implementing some of the ANNOTATE_* macro's using the above two macro's would limit the usefulness of a thread checker tool because no information is passed to the tool about the type of synchronization object that resides at 'address'. Hence the tool cannot check whether the synchronization object has been used properly. Furthermore, implementing the ANNOTATE_RWLOCK_REQUIRED() / ANNOTATE_RWLOCK_RELEASED() macro's using ANNOTATE_SENDTO_SYNC_OBJECT() / ANNOTATE_RECVFROM_SYNC_OBJECT() would require that the client tracks the set of threads that hold a reader lock. This is something that should not be done by the client but by the tool. Bart. |
|
From: Julian S. <js...@ac...> - 2009-05-30 11:00:27
|
Ok in principle, but some comments: > > Adding support for the ANNOTATE_*() macro's in drd/drd.h is probably > > not too hard. I'll have a look at it. > > Implementation-wise you need to support Annotate*() functions, or > rewrite ANNOTATE*() macro's using client requests and support those > client requests. > I find the approach with Annotate*() functions simpler to maintain. I prefer that the basic thing that is implemented and documented to be the ANNOTATE_* macros, not the Annotate*() functions. The macros can be implemented with just a header file, like the Memcheck macros. The functions require shared objects etc and therefore create a dependency on a new library (IIUC), which isn't desirable. There are a lot of these requests, which is a big overhead w.r.t. verifying that the implementation is correct and keeping it correct. Are they all really necessary? I wonder if you can implement these using a smaller subset, based on the idea of sending an abstract message between threads. Suppose you had a ANNOTATE_SENDTO_SYNC_OBJECT(address) and ANNOTATE_RECVFROM_SYNC_OBJECT(address) which create a h-b edge through the sync object. How many of these requests could be implemented using just those two? J |
|
From: Tom H. <th...@cy...> - 2009-05-30 02:44:32
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2009-05-30 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 == 481 tests, 0 stderr failures, 0 stdout failures, 0 post failures == |
|
From: Tom H. <th...@cy...> - 2009-05-30 02:28:26
|
Nightly build on mg ( x86_64, Fedora 9 ) started at 2009-05-30 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 == 487 tests, 0 stderr failures, 1 stdout failure, 0 post failures == none/tests/linux/mremap2 (stdout) |