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
(4) |
2
(3) |
3
(7) |
4
(7) |
5
(6) |
6
(5) |
|
7
(21) |
8
(14) |
9
(8) |
10
(10) |
11
(7) |
12
(4) |
13
|
|
14
(3) |
15
(11) |
16
(4) |
17
|
18
|
19
|
20
|
|
21
(3) |
22
(4) |
23
(2) |
24
(3) |
25
|
26
(4) |
27
(2) |
|
28
(6) |
29
|
30
(2) |
31
(7) |
|
|
|
|
From: <sv...@va...> - 2010-03-02 08:58:07
|
Author: bart
Date: 2010-03-02 08:57:50 +0000 (Tue, 02 Mar 2010)
New Revision: 11059
Log:
Added the source code of one more unit test.
Added:
trunk/drd/tests/annotate_smart_pointer.cpp
Modified:
trunk/drd/tests/
trunk/drd/tests/Makefile.am
Property changes on: trunk/drd/tests
___________________________________________________________________
Name: svn:ignore
- *.dSYM
*.stderr.diff*
*.stderr.out
*.stdout.diff*
*.stdout.out
.deps
annotate_ignore_rw
annotate_ignore_write
annotate_publish_hg
annotate_rwlock
atomic_var
bar_bad
bar_trivial
boost_thread
circular_buffer
custom_alloc
drd_bitmap_test
fp_race
hg01_all_ok
hg02_deadlock
hg03_inherit
hg04_race
hg05_race2
hg06_readshared
hold_lock
linuxthreads_det
Makefile
Makefile.in
matinv
memory_allocation
monitor_example
new_delete
omp_matinv
omp_prime
omp_printf
pth_barrier
pth_barrier_race
pth_barrier_reinit
pth_broadcast
pth_cancel_locked
pth_cleanup_handler
pth_cond_race
pth_create_chain
pth_create_glibc_2_0
pth_detached
pth_detached_sem
pth_inconsistent_cond_wait
pth_mutex_reinit
pth_process_shared_mutex
pth_spinlock
qt4_atomic
qt4_mutex
qt4_rwlock
qt4_semaphore
recursive_mutex
rwlock_race
rwlock_test
rwlock_type_checking
sem_as_mutex
sem_open
sigalrm
tc01_simple_race
tc02_simple_tls
tc03_re_excl
tc04_free_lock
tc05_simple_race
tc06_two_races
tc07_hbl1
tc08_hbl2
tc09_bad_unlock
tc10_rec_lock
tc11_XCHG
tc12_rwl_trivial
tc13_laog1
tc15_laog_lockdel
tc16_byterace
tc17_sembar
tc18_semabuse
tc19_shadowmem
tc20_verifywrap
tc21_pthonce
tc22_exit_w_lock
tc23_bogus_condwait
tc24_nonzero_sem
thread_name
trylock
tsan_unittest
unit_bitmap
unit_vc
vg_regtest.tmp*
+ *.dSYM
*.stderr.diff*
*.stderr.out
*.stdout.diff*
*.stdout.out
.deps
Makefile
Makefile.in
annotate_ignore_rw
annotate_ignore_write
annotate_publish_hg
annotate_rwlock
annotate_smart_pointer
atomic_var
bar_bad
bar_trivial
boost_thread
circular_buffer
custom_alloc
drd_bitmap_test
fp_race
hg01_all_ok
hg02_deadlock
hg03_inherit
hg04_race
hg05_race2
hg06_readshared
hold_lock
linuxthreads_det
matinv
memory_allocation
monitor_example
new_delete
omp_matinv
omp_prime
omp_printf
pth_barrier
pth_barrier_race
pth_barrier_reinit
pth_broadcast
pth_cancel_locked
pth_cleanup_handler
pth_cond_race
pth_create_chain
pth_create_glibc_2_0
pth_detached
pth_detached_sem
pth_inconsistent_cond_wait
pth_mutex_reinit
pth_process_shared_mutex
pth_spinlock
qt4_atomic
qt4_mutex
qt4_rwlock
qt4_semaphore
recursive_mutex
rwlock_race
rwlock_test
rwlock_type_checking
sem_as_mutex
sem_open
sigalrm
tc01_simple_race
tc02_simple_tls
tc03_re_excl
tc04_free_lock
tc05_simple_race
tc06_two_races
tc07_hbl1
tc08_hbl2
tc09_bad_unlock
tc10_rec_lock
tc11_XCHG
tc12_rwl_trivial
tc13_laog1
tc15_laog_lockdel
tc16_byterace
tc17_sembar
tc18_semabuse
tc19_shadowmem
tc20_verifywrap
tc21_pthonce
tc22_exit_w_lock
tc23_bogus_condwait
tc24_nonzero_sem
thread_name
trylock
tsan_unittest
unit_bitmap
unit_vc
vg_regtest.tmp*
Modified: trunk/drd/tests/Makefile.am
===================================================================
--- trunk/drd/tests/Makefile.am 2010-03-01 16:42:56 UTC (rev 11058)
+++ trunk/drd/tests/Makefile.am 2010-03-02 08:57:50 UTC (rev 11059)
@@ -281,8 +281,12 @@
endif
if HAVE_BUILTIN_ATOMIC
-check_PROGRAMS += annotate_rwlock atomic_var circular_buffer
-check_PROGRAMS += tsan_unittest
+check_PROGRAMS += \
+ annotate_rwlock \
+ annotate_smart_pointer \
+ atomic_var \
+ circular_buffer \
+ tsan_unittest
endif
if HAVE_OPENMP
@@ -339,6 +343,10 @@
boost_thread_LDADD = $(BOOST_LIBS)
endif
+if HAVE_BUILTIN_ATOMIC
+annotate_smart_pointer_SOURCES = annotate_smart_pointer.cpp
+endif
+
if HAVE_OPENMP
omp_matinv_CFLAGS = $(AM_CFLAGS) -fopenmp
omp_matinv_LDFLAGS = -fopenmp
Added: trunk/drd/tests/annotate_smart_pointer.cpp
===================================================================
--- trunk/drd/tests/annotate_smart_pointer.cpp (rev 0)
+++ trunk/drd/tests/annotate_smart_pointer.cpp 2010-03-02 08:57:50 UTC (rev 11059)
@@ -0,0 +1,162 @@
+#include <cassert>
+#include <iostream>
+#include <pthread.h>
+#include <semaphore.h>
+
+template<class T>
+class smart_ptr
+{
+public:
+ typedef unsigned counter_t;
+
+ template <typename Q> friend class smart_ptr;
+
+ explicit smart_ptr()
+ : m_ptr(NULL), m_count_ptr(NULL)
+ { }
+
+ explicit smart_ptr(T* const pT)
+ : m_ptr(NULL), m_count_ptr(NULL)
+ {
+ set(pT, pT ? new counter_t(0) : NULL);
+ }
+
+ template <typename Q>
+ explicit smart_ptr(Q* const q)
+ : m_ptr(NULL), m_count_ptr(NULL)
+ {
+ set(q, q ? new counter_t(0) : NULL);
+ }
+
+ ~smart_ptr()
+ {
+ set(NULL, NULL);
+ }
+
+ smart_ptr(const smart_ptr<T>& sp)
+ : m_ptr(NULL), m_count_ptr(NULL)
+ {
+ set(sp.m_ptr, sp.m_count_ptr);
+ }
+
+ template <typename Q>
+ smart_ptr(const smart_ptr<Q>& sp)
+ : m_ptr(NULL), m_count_ptr(NULL)
+ {
+ set(sp.m_ptr, sp.m_count_ptr);
+ }
+
+ smart_ptr& operator=(const smart_ptr<T>& sp)
+ {
+ set(sp.m_ptr, sp.m_count_ptr);
+ return *this;
+ }
+
+ smart_ptr& operator=(T* const p)
+ {
+ set(p, p ? new counter_t(0) : NULL);
+ return *this;
+ }
+
+ template <typename Q>
+ smart_ptr& operator=(Q* const q)
+ {
+ set(q, q ? new counter_t(0) : NULL);
+ return *this;
+ }
+
+ T* operator->() const
+ {
+ assert(m_ptr);
+ return m_ptr;
+ }
+
+ T& operator*() const
+ {
+ assert(m_ptr);
+ return *m_ptr;
+ }
+
+private:
+ void set(T* const pT, volatile counter_t* const count_ptr)
+ {
+ if (m_ptr != pT)
+ {
+ if (m_count_ptr && __sync_sub_and_fetch(m_count_ptr, 1) == 0)
+ {
+ delete m_ptr;
+ delete m_count_ptr;
+ }
+ m_ptr = pT;
+ m_count_ptr = count_ptr;
+ if (count_ptr)
+ __sync_add_and_fetch(count_ptr, 1);
+ }
+ }
+
+ T* m_ptr;
+ volatile counter_t* m_count_ptr;
+};
+
+class counter
+{
+public:
+ counter()
+ : m_mutex(), m_count()
+ {
+ pthread_mutex_init(&m_mutex, NULL);
+ }
+ ~counter()
+ {
+ m_count = -1;
+ pthread_mutex_destroy(&m_mutex);
+ }
+ int get() const
+ {
+ int result;
+ pthread_mutex_lock(&m_mutex);
+ result = m_count;
+ pthread_mutex_unlock(&m_mutex);
+ return result;
+ }
+ int post_increment()
+ {
+ int result;
+ pthread_mutex_lock(&m_mutex);
+ result = m_count++;
+ pthread_mutex_unlock(&m_mutex);
+ return result;
+ }
+
+private:
+ mutable pthread_mutex_t m_mutex;
+ int m_count;
+};
+
+static sem_t s_sem;
+
+static void* thread_func(void* arg)
+{
+ smart_ptr<counter> p(*reinterpret_cast<smart_ptr<counter>*>(arg));
+ sem_post(&s_sem);
+ p->post_increment();
+ p = NULL;
+ return NULL;
+}
+
+int main(int argc, char** argv)
+{
+ smart_ptr<counter> p(new counter);
+ pthread_t tid;
+
+ sem_init(&s_sem, 0, 0);
+ p->post_increment();
+ pthread_create(&tid, NULL, thread_func, &p);
+ // Wait until the created thread has copied the shared pointer.
+ sem_wait(&s_sem);
+ p = NULL;
+ pthread_join(tid, NULL);
+ sem_destroy(&s_sem);
+ std::cout << "Done.\n";
+ return 0;
+}
Property changes on: trunk/drd/tests/annotate_smart_pointer.cpp
___________________________________________________________________
Name: svn:executable
+ *
|
|
From: Tom H. <th...@cy...> - 2010-03-02 03:45:14
|
Nightly build on lloyd ( x86_64, Fedora 7 ) Started at 2010-03-02 03:05:04 GMT Ended at 2010-03-02 03:44:55 GMT 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 == 531 tests, 1 stderr failure, 0 stdout failures, 0 post failures == helgrind/tests/tc06_two_races_xml (stderr) |
|
From: Tom H. <th...@cy...> - 2010-03-02 03:36:38
|
Nightly build on mg ( x86_64, Fedora 9 ) Started at 2010-03-02 03:10:07 GMT Ended at 2010-03-02 03:36:24 GMT 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 == 538 tests, 1 stderr failure, 0 stdout failures, 0 post failures == helgrind/tests/tc06_two_races_xml (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 == 538 tests, 2 stderr failures, 0 stdout failures, 0 post failures == helgrind/tests/pth_spinlock (stderr) helgrind/tests/tc06_two_races_xml (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Tue Mar 2 03:23:31 2010 --- new.short Tue Mar 2 03:36:24 2010 *************** *** 8,11 **** ! == 538 tests, 2 stderr failures, 0 stdout failures, 0 post failures == ! helgrind/tests/pth_spinlock (stderr) helgrind/tests/tc06_two_races_xml (stderr) --- 8,10 ---- ! == 538 tests, 1 stderr failure, 0 stdout failures, 0 post failures == helgrind/tests/tc06_two_races_xml (stderr) |