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) |
|
|
|
|
|
|
|
From: Julian S. <js...@ac...> - 2009-05-19 19:00:45
|
> > Because pth_process_shared_mutex is unconditionally in check_PROGRAMS, > > I think it is not necessary to include pth_process_shared_mutex.c > > in EXTRA_DIST. But for sources corresponding to (eg) matinv pth_barrier > > pth_barrier_race pth_barrier_reinit, I am suggesting that perhaps we do > > need to include their .c files in EXTRA_DIST, because what if the > > machine running "make dist" did not, for example, HAVE_PTHREAD_BARRIER? > > By the way, the issue that the result of "make dist" depends on the > machine "make dist" is run on does not only apply to the source code > of DRD regression tests but also to the source code of the Helgrind > regression tests. Ah, ok. That's useful to know. J |
|
From: Julian S. <js...@ac...> - 2009-05-19 18:59:31
|
On Tuesday 19 May 2009, Bart Van Assche wrote: > Hello, > > Regarding the issue I reported earlier today with "make dist": by this > time I found out that in the file auxprogs/Makefile.am refers to the > symbol @VGCONF_ARCH_SEC@, a symbol that is never expanded by > configure. Running make dist generates a.o. the following files: > > auxprogs/libmpiwrap-@VGCONF_ARCH_SEC@-linux.c > auxprogs/libmpiwrap-amd64-linux.c > > This doesn't look right to me. I agree. My mistake; this was caused by r9899. We should back it out. J |
|
From: Bart V. A. <bar...@gm...> - 2009-05-19 18:21:57
|
Hello, Regarding the issue I reported earlier today with "make dist": by this time I found out that in the file auxprogs/Makefile.am refers to the symbol @VGCONF_ARCH_SEC@, a symbol that is never expanded by configure. Running make dist generates a.o. the following files: auxprogs/libmpiwrap-@VGCONF_ARCH_SEC@-linux.c auxprogs/libmpiwrap-amd64-linux.c This doesn't look right to me. Bart. |
|
From: <sv...@va...> - 2009-05-19 18:05:32
|
Author: bart
Date: 2009-05-19 19:05:25 +0100 (Tue, 19 May 2009)
New Revision: 9989
Log:
Updated list of bugs fixed in 3.5.0.
Modified:
trunk/NEWS
Modified: trunk/NEWS
===================================================================
--- trunk/NEWS 2009-05-19 17:55:03 UTC (rev 9988)
+++ trunk/NEWS 2009-05-19 18:05:25 UTC (rev 9989)
@@ -71,6 +71,7 @@
188046 Removed a bashism from the configure script.
189763 DRD - pthread_create@GLIBC_2.0() no longer triggers an assertion
failure.
+n-i-bz DRD - fixed assertion failure triggered by mutex reinitialization.
|
|
From: <sv...@va...> - 2009-05-19 17:55:09
|
Author: bart Date: 2009-05-19 18:55:03 +0100 (Tue, 19 May 2009) New Revision: 9988 Log: Updated ignore list. Modified: branches/VALGRIND_3_4_BRANCH/drd/tests/ Property changes on: branches/VALGRIND_3_4_BRANCH/drd/tests ___________________________________________________________________ Name: svn:ignore - *.stderr.diff* *.stderr.out *.stdout.diff* *.stdout.out .deps atomic_var bar_bad bar_trivial boost_thread circular_buffer drd_bitmap_test filter_stderr_and_thread_no 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_reinit pth_broadcast pth_cancel_locked pth_cond_race pth_create_chain pth_detached pth_detached_sem pth_inconsistent_cond_wait pth_process_shared_mutex pth_spinlock qt4_mutex qt4_rwlock qt4_semaphore recursive_mutex rwlock_race rwlock_test sem_as_mutex 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 trylock vg_regtest.tmp* + *.stderr.diff* *.stderr.out *.stdout.diff* *.stdout.out .deps atomic_var bar_bad bar_trivial boost_thread circular_buffer drd_bitmap_test filter_stderr_and_thread_no 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_reinit pth_broadcast pth_cancel_locked pth_cond_race pth_create_chain pth_detached pth_detached_sem pth_inconsistent_cond_wait pth_mutex_reinit pth_process_shared_mutex pth_spinlock qt4_mutex qt4_rwlock qt4_semaphore recursive_mutex rwlock_race rwlock_test sem_as_mutex 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 trylock vg_regtest.tmp* |
|
From: <sv...@va...> - 2009-05-19 17:54:43
|
Author: bart
Date: 2009-05-19 18:54:29 +0100 (Tue, 19 May 2009)
New Revision: 9987
Log:
Merged trunk revisions 9851, 9852 and 9986: fixed DRD assertion failure triggered by mutex reinitialization and added regression test.
Added:
branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.c
branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.stderr.exp
branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.vgtest
Modified:
branches/VALGRIND_3_4_BRANCH/drd/drd_mutex.c
branches/VALGRIND_3_4_BRANCH/drd/tests/Makefile.am
Modified: branches/VALGRIND_3_4_BRANCH/drd/drd_mutex.c
===================================================================
--- branches/VALGRIND_3_4_BRANCH/drd/drd_mutex.c 2009-05-19 17:26:20 UTC (rev 9986)
+++ branches/VALGRIND_3_4_BRANCH/drd/drd_mutex.c 2009-05-19 17:54:29 UTC (rev 9987)
@@ -189,6 +189,7 @@
VG_(get_IP)(vg_tid),
"Mutex reinitialization",
&MEI);
+ p->mutex_type = mutex_type;
return p;
}
p = mutex_get_or_allocate(mutex, mutex_type);
Modified: branches/VALGRIND_3_4_BRANCH/drd/tests/Makefile.am
===================================================================
--- branches/VALGRIND_3_4_BRANCH/drd/tests/Makefile.am 2009-05-19 17:26:20 UTC (rev 9986)
+++ branches/VALGRIND_3_4_BRANCH/drd/tests/Makefile.am 2009-05-19 17:54:29 UTC (rev 9987)
@@ -22,8 +22,8 @@
atomic_var.vgtest \
bar_bad.stderr.exp \
bar_bad.vgtest \
+ bar_trivial.stderr.exp \
bar_trivial.stdout.exp \
- bar_trivial.stderr.exp \
bar_trivial.vgtest \
boost_thread.stderr.exp \
boost_thread.vgtest \
@@ -109,8 +109,10 @@
pth_detached_sem.vgtest \
pth_inconsistent_cond_wait.stderr.exp \
pth_inconsistent_cond_wait.vgtest \
+ pth_mutex_reinit.stderr.exp \
+ pth_mutex_reinit.vgtest \
+ pth_process_shared_mutex.stderr.exp \
pth_process_shared_mutex.vgtest \
- pth_process_shared_mutex.stderr.exp \
pth_spinlock.stderr.exp \
pth_spinlock.vgtest \
qt4_mutex.stderr.exp \
@@ -230,8 +232,9 @@
pth_create_chain \
pth_detached \
pth_detached_sem \
+ pth_inconsistent_cond_wait \
+ pth_mutex_reinit \
pth_process_shared_mutex \
- pth_inconsistent_cond_wait \
pth_spinlock \
recursive_mutex \
rwlock_race \
@@ -357,6 +360,9 @@
pth_inconsistent_cond_wait_SOURCES = pth_inconsistent_cond_wait.c
pth_inconsistent_cond_wait_LDADD = -lpthread
+pth_mutex_reinit_SOURCES = pth_mutex_reinit.c
+pth_mutex_reinit_LDADD = -lpthread
+
pth_process_shared_mutex_SOURCES = pth_process_shared_mutex.c
pth_process_shared_mutex_LDADD = -lpthread
Copied: branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.c (from rev 9852, trunk/drd/tests/pth_mutex_reinit.c)
===================================================================
--- branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.c (rev 0)
+++ branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.c 2009-05-19 17:54:29 UTC (rev 9987)
@@ -0,0 +1,36 @@
+/* Test program that triggers mutex reinitialization. */
+
+
+#define _GNU_SOURCE
+
+#include <assert.h>
+#include <pthread.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+
+int main(int argc, char** argv)
+{
+ pthread_mutex_t m;
+ pthread_mutexattr_t attr;
+
+ pthread_mutexattr_init(&attr);
+ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_NORMAL);
+ pthread_mutex_init(&m, &attr);
+ pthread_mutexattr_destroy(&attr);
+ pthread_mutex_lock(&m);
+ pthread_mutex_unlock(&m);
+
+ pthread_mutexattr_init(&attr);
+ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
+ pthread_mutex_init(&m, &attr);
+ pthread_mutexattr_destroy(&attr);
+ pthread_mutex_lock(&m);
+ pthread_mutex_unlock(&m);
+
+ pthread_mutex_destroy(&m);
+
+ fprintf(stderr, "Done.\n");
+
+ return 0;
+}
Copied: branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.stderr.exp (from rev 9852, trunk/drd/tests/pth_mutex_reinit.stderr.exp)
===================================================================
--- branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.stderr.exp (rev 0)
+++ branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.stderr.exp 2009-05-19 17:54:29 UTC (rev 9987)
@@ -0,0 +1,10 @@
+
+Mutex reinitialization: mutex 0x........, recursion count 0, owner 1.
+ at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
+ by 0x........: main (pth_mutex_reinit.c:?)
+mutex 0x........ was first observed at:
+ at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
+ by 0x........: main (pth_mutex_reinit.c:?)
+Done.
+
+ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
Copied: branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.vgtest (from rev 9852, trunk/drd/tests/pth_mutex_reinit.vgtest)
===================================================================
--- branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.vgtest (rev 0)
+++ branches/VALGRIND_3_4_BRANCH/drd/tests/pth_mutex_reinit.vgtest 2009-05-19 17:54:29 UTC (rev 9987)
@@ -0,0 +1,3 @@
+prereq: test -e pth_mutex_reinit && ./supported_libpthread
+vgopts: --var-info=yes --check-stack-var=yes
+prog: pth_mutex_reinit
|
|
From: <sv...@va...> - 2009-05-19 17:26:33
|
Author: bart Date: 2009-05-19 18:26:20 +0100 (Tue, 19 May 2009) New Revision: 9986 Log: Sorted EXTRA_DIST alphabetically. Modified: trunk/drd/tests/Makefile.am Modified: trunk/drd/tests/Makefile.am =================================================================== --- trunk/drd/tests/Makefile.am 2009-05-19 17:21:01 UTC (rev 9985) +++ trunk/drd/tests/Makefile.am 2009-05-19 17:26:20 UTC (rev 9986) @@ -116,8 +116,8 @@ pth_inconsistent_cond_wait.vgtest \ pth_mutex_reinit.stderr.exp \ pth_mutex_reinit.vgtest \ + pth_process_shared_mutex.stderr.exp \ pth_process_shared_mutex.vgtest \ - pth_process_shared_mutex.stderr.exp \ pth_spinlock.stderr.exp \ pth_spinlock.vgtest \ qt4_mutex.stderr.exp \ |
|
From: <sv...@va...> - 2009-05-19 17:21:13
|
Author: bart Date: 2009-05-19 18:21:01 +0100 (Tue, 19 May 2009) New Revision: 9985 Log: Updated ignore list. Modified: branches/VALGRIND_3_4_BRANCH/drd/tests/ Property changes on: branches/VALGRIND_3_4_BRANCH/drd/tests ___________________________________________________________________ Name: svn:ignore - *.stderr.diff* *.stderr.out *.stdout.diff* *.stdout.out .deps atomic_var bar_bad bar_trivial boost_thread circular_buffer 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_reinit pth_broadcast pth_cancel_locked pth_cond_race pth_create_chain pth_detached pth_detached_sem pth_inconsistent_cond_wait pth_spinlock qt4_mutex qt4_rwlock qt4_semaphore recursive_mutex rwlock_race rwlock_test sem_as_mutex 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 trylock vg_regtest.tmp* + *.stderr.diff* *.stderr.out *.stdout.diff* *.stdout.out .deps atomic_var bar_bad bar_trivial boost_thread circular_buffer drd_bitmap_test filter_stderr_and_thread_no 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_reinit pth_broadcast pth_cancel_locked pth_cond_race pth_create_chain pth_detached pth_detached_sem pth_inconsistent_cond_wait pth_process_shared_mutex pth_spinlock qt4_mutex qt4_rwlock qt4_semaphore recursive_mutex rwlock_race rwlock_test sem_as_mutex 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 trylock vg_regtest.tmp* |
|
From: Bart V. A. <bar...@gm...> - 2009-05-19 17:02:46
|
On Tue, May 19, 2009 at 10:06 AM, Julian Seward <js...@ac...> wrote: > Anyway, this leads to the current question, which is what to do about > the sources for check_PROGRAMS components which are only conditionally > defined, eg > > if HAVE_PTHREAD_BARRIER > check_PROGRAMS += matinv pth_barrier pth_barrier_race pth_barrier_reinit > endif > > Because pth_process_shared_mutex is unconditionally in check_PROGRAMS, > I think it is not necessary to include pth_process_shared_mutex.c > in EXTRA_DIST. But for sources corresponding to (eg) matinv pth_barrier > pth_barrier_race pth_barrier_reinit, I am suggesting that perhaps we do > need to include their .c files in EXTRA_DIST, because what if the > machine running "make dist" did not, for example, HAVE_PTHREAD_BARRIER? By the way, the issue that the result of "make dist" depends on the machine "make dist" is run on does not only apply to the source code of DRD regression tests but also to the source code of the Helgrind regression tests. Bart. |
|
From: Konstantin S. <kon...@gm...> - 2009-05-19 08:58:48
|
On Tue, May 19, 2009 at 2:29 AM, Nicholas Nethercote
<n.n...@gm...> wrote:
> On Mon, May 18, 2009 at 6:11 PM, Konstantin Serebryany
> <kon...@gm...> wrote:
>> Hello Memcheckers,
>>
>> I've got a complain from a novice memcheck user about a confusing message:
>>
>> % cat stack_uninit.c
>> int main() {
>> int unrelated[100];
>> // ...
>> int uninited[10];
>> return uninited[3] ? 1 : 0;
>> }
>> % ~/valgrind/trunk/Inst/bin/valgrind -q --track-origins=yes ./a.out
>> ==25539== Syscall param exit_group(status) contains uninitialised byte(s)
>> ...
>> ==25539== Uninitialised value was created by a stack allocation
>> ==25539== at 0x4004B0: main (stack_uninit.c:1)
>>
>> The stack 'main (stack_uninit.c:1)' points to the beginning of the
>> function's code .
>> Is it possible to get the exact line where the uninitialized stack
>> object was created (line 4 instead of line 1)?
>>
>> If this is hard or impossible, could you change the message text to
>> make it less confusing?
>> Something like: 'Uninitialised value was created by a stack allocation
>> at or after this point:'.
>
> I think the current behaviour is reasonable. The stack memory is
> allocated upon entry to the function; if you have more than one stack
> variable they will be allocated all at once, not one at a time.
> Because of this, the debug info, which Valgrind relies on, identifies
> the stack allocation with the opening brace of the function, which is
> often on its own line but in your example is on the same line as the
> declaration for main().
That is right. But not every memcheck user understands that.
I just suggested to make the report phrase a bit more descriptive.
Thanks,
--kcc
>
> N
>
|
|
From: Julian S. <js...@ac...> - 2009-05-19 08:03:25
|
On Tuesday 19 May 2009, Nicholas Nethercote wrote:
> On Tue, May 19, 2009 at 5:29 PM, Julian Seward <js...@ac...> wrote:
> >> Is it necessary to include .c files in EXTRA_DIST ?
> >
> > No. I think the .c files for the tarball are inferred from the names
> > in check_PROGRAMS.
> >
> > Hmm, but then drd/tests/Makefile.am has various conditional additions
> > to check_PROGRAMS:
> >
> > if HAVE_BOOST_1_35
> > check_PROGRAMS += boost_thread
> > endif
> >
> > So if my theory is correct, then the .c files included in the tarball
> > depends what the configure script on the machine running 'make dist'
> > found. Which is obviously very bad.
> >
> > So, uh, once again confused by the build system. Nick, any ideas?
>
> Putting the .c file in EXTRA_DIST caused problems?
Er, no. Confusion all round :-) Let's start over.
The original change is the first chunk in r9900, viz:
Modified: branches/MESSAGING_TIDYUP/drd/tests/Makefile.am
===================================================================
--- branches/MESSAGING_TIDYUP/drd/tests/Makefile.am 2009-05-18 08:19:24
UTC (rev 9899)
+++ branches/MESSAGING_TIDYUP/drd/tests/Makefile.am 2009-05-18 09:22:39
UTC (rev 9900)
@@ -115,7 +115,7 @@
pth_inconsistent_cond_wait.stderr.exp2 \
pth_inconsistent_cond_wait.vgtest \
pth_process_shared_mutex.vgtest \
- pth_process_shared_mutex.c \
+ pth_process_shared_mutex.stderr.exp \
pth_spinlock.stderr.exp \
pth_spinlock.vgtest \
qt4_mutex.stderr.exp \
I did this because, when trying to unbreak make dist on
branches/MESSAGING_TIDYUP, pth_process_shared_mutex.stderr.exp
was not in the tarball. So I edited the Makefile.am as above,
and added it (to EXTRA_DIST). But I noticed also that
pth_process_shared_mutex.c was in the list, and thought, hmm,
that's wrong. So I just changed the ending from .c to .stderr.exp,
giving the above delta.
Anyway, this leads to the current question, which is what to do about
the sources for check_PROGRAMS components which are only conditionally
defined, eg
if HAVE_PTHREAD_BARRIER
check_PROGRAMS += matinv pth_barrier pth_barrier_race pth_barrier_reinit
endif
Because pth_process_shared_mutex is unconditionally in check_PROGRAMS,
I think it is not necessary to include pth_process_shared_mutex.c
in EXTRA_DIST. But for sources corresponding to (eg) matinv pth_barrier
pth_barrier_race pth_barrier_reinit, I am suggesting that perhaps we do
need to include their .c files in EXTRA_DIST, because what if the
machine running "make dist" did not, for example, HAVE_PTHREAD_BARRIER?
J
|
|
From: <sv...@va...> - 2009-05-19 08:00:15
|
Author: njn
Date: 2009-05-19 09:00:06 +0100 (Tue, 19 May 2009)
New Revision: 9984
Log:
DARWIN sync: malloc_usable_size return value should be SizeT.
Modified:
trunk/coregrind/m_replacemalloc/vg_replace_malloc.c
Modified: trunk/coregrind/m_replacemalloc/vg_replace_malloc.c
===================================================================
--- trunk/coregrind/m_replacemalloc/vg_replace_malloc.c 2009-05-19 07:56:55 UTC (rev 9983)
+++ trunk/coregrind/m_replacemalloc/vg_replace_malloc.c 2009-05-19 08:00:06 UTC (rev 9984)
@@ -550,8 +550,8 @@
#define MALLOC_USABLE_SIZE(soname, fnname) \
\
- int VG_REPLACE_FUNCTION_ZU(soname, fnname) ( void* p ); \
- int VG_REPLACE_FUNCTION_ZU(soname, fnname) ( void* p ) \
+ SizeT VG_REPLACE_FUNCTION_ZU(soname, fnname) ( void* p ); \
+ SizeT VG_REPLACE_FUNCTION_ZU(soname, fnname) ( void* p ) \
{ \
SizeT pszB; \
\
|
|
From: <sv...@va...> - 2009-05-19 07:57:07
|
Author: njn
Date: 2009-05-19 08:56:55 +0100 (Tue, 19 May 2009)
New Revision: 9983
Log:
DARWIN sync: wibble.
Modified:
trunk/coregrind/m_replacemalloc/vg_replace_malloc.c
Modified: trunk/coregrind/m_replacemalloc/vg_replace_malloc.c
===================================================================
--- trunk/coregrind/m_replacemalloc/vg_replace_malloc.c 2009-05-19 07:55:19 UTC (rev 9982)
+++ trunk/coregrind/m_replacemalloc/vg_replace_malloc.c 2009-05-19 07:56:55 UTC (rev 9983)
@@ -109,8 +109,8 @@
static void init(void) __attribute__((constructor));
#define MALLOC_TRACE(format, args...) \
- if (info.clo_trace_malloc) \
- VALGRIND_INTERNAL_PRINTF(format, ## args )
+ if (info.clo_trace_malloc) { \
+ VALGRIND_INTERNAL_PRINTF(format, ## args ); }
/* Below are new versions of malloc, __builtin_new, free,
__builtin_delete, calloc, realloc, memalign, and friends.
|
|
From: <sv...@va...> - 2009-05-19 07:55:26
|
Author: njn
Date: 2009-05-19 08:55:19 +0100 (Tue, 19 May 2009)
New Revision: 9982
Log:
Merge r9157 (linux ld script update) from the trunk.
Modified:
branches/DARWIN/Makefile.am
Modified: branches/DARWIN/Makefile.am
===================================================================
--- branches/DARWIN/Makefile.am 2009-05-19 07:50:18 UTC (rev 9981)
+++ branches/DARWIN/Makefile.am 2009-05-19 07:55:19 UTC (rev 9982)
@@ -228,26 +228,26 @@
$(CC) @FLAG_M32@ -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
valt_load_address_amd64_linux.lds: Makefile
$(CC) -m64 -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
valt_load_address_ppc32_linux.lds: Makefile
$(CC) @FLAG_M32@ -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
valt_load_address_ppc64_linux.lds: Makefile
$(CC) -m64 -Wl,--verbose -nostdlib 2>&1 | sed \
-e '1,/^=====\+$$/d' \
-e '/^=====\+$$/,/.\*/d' \
- -e '/\. = 0x[0-9A-Fa-f]\+ + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
+ -e '/\. = \(0x[0-9A-Fa-f]\+\|SEGMENT_START("[^"]\+", 0x[0-9A-Fa-f]\+)\) + SIZEOF_HEADERS/s/0x[0-9A-Fa-f]\+/valt_load_address/g' > $@ \
|| rm -f $@
|
|
From: <sv...@va...> - 2009-05-19 07:50:35
|
Author: njn Date: 2009-05-19 08:50:18 +0100 (Tue, 19 May 2009) New Revision: 9981 Log: Merged r9034 (configure test move) from the trunk. Also removed a not-needed configure test. Modified: branches/DARWIN/configure.in Modified: branches/DARWIN/configure.in =================================================================== --- branches/DARWIN/configure.in 2009-05-19 07:45:40 UTC (rev 9980) +++ branches/DARWIN/configure.in 2009-05-19 07:50:18 UTC (rev 9981) @@ -884,26 +884,6 @@ ]) -# Check whether FILE has a member called _lock and whether it's a pointer. - -AC_MSG_CHECKING([for FILE::_lock]) - -AC_TRY_COMPILE( -[ - #include <stdio.h> -], [ - void *p; - p = stdout->_lock; - return 0; -], [ -AC_MSG_RESULT([yes]) -AC_DEFINE([HAVE_LIBC_FILE_LOCK], 1, - [Define to 1 if FILE has a member called _lock.]) -], [ -AC_MSG_RESULT([no]) -]) - - # Check whether pthread_mutex_t has a member called __m_kind. AC_MSG_CHECKING([for pthread_mutex_t::__m_kind]) @@ -1356,24 +1336,6 @@ fi -# does this compiler have built-in functions for atomic memory access ? -AC_MSG_CHECKING([if gcc supports __sync_bool_compare_and_swap]) - -AC_TRY_LINK(, -[ - int variable = 1; - return (__sync_bool_compare_and_swap(&variable, 1, 2) - && __sync_add_and_fetch(&variable, 1) ? 1 : 0) -], -[ - AC_MSG_RESULT([yes]) - AC_DEFINE(HAVE_BUILTIN_ATOMIC, 1, [Define to 1 if gcc supports __sync_bool_compare_and_swap() a.o.]) -], -[ - AC_MSG_RESULT([no]) -]) - - # does the ppc assembler support "mtocrf" et al? AC_MSG_CHECKING([if ppc32/64 as supports mtocrf/mfocrf]) @@ -1798,7 +1760,7 @@ AC_MSG_CHECKING([for OpenMP]) safe_CFLAGS=$CFLAGS -CFLAGS="-fopenmp" +CFLAGS="-fopenmp $mflag_primary" AC_LINK_IFELSE( [ @@ -1821,6 +1783,29 @@ AM_CONDITIONAL([HAVE_OPENMP], [test x$ac_have_openmp = xyes]) +# does this compiler have built-in functions for atomic memory access ? +AC_MSG_CHECKING([if gcc supports __sync_bool_compare_and_swap]) + +safe_CFLAGS=$CFLAGS +CFLAGS="$mflag_primary" + +AC_TRY_LINK(, +[ + int variable = 1; + return (__sync_bool_compare_and_swap(&variable, 1, 2) + && __sync_add_and_fetch(&variable, 1) ? 1 : 0) +], +[ + AC_MSG_RESULT([yes]) + AC_DEFINE(HAVE_BUILTIN_ATOMIC, 1, [Define to 1 if gcc supports __sync_bool_compare_and_swap() a.o.]) +], +[ + AC_MSG_RESULT([no]) +]) + +CFLAGS=$safe_CFLAGS + + #---------------------------------------------------------------------------- # Ok. We're done checking. #---------------------------------------------------------------------------- |
|
From: <sv...@va...> - 2009-05-19 07:45:49
|
Author: njn
Date: 2009-05-19 08:45:40 +0100 (Tue, 19 May 2009)
New Revision: 9980
Log:
Merge r9096 (glibc2.10 support) from the trunk.
Modified:
branches/DARWIN/configure.in
Modified: branches/DARWIN/configure.in
===================================================================
--- branches/DARWIN/configure.in 2009-05-19 07:39:40 UTC (rev 9979)
+++ branches/DARWIN/configure.in 2009-05-19 07:45:40 UTC (rev 9980)
@@ -649,6 +649,16 @@
],
GLIBC_VERSION="2.9")
+AC_EGREP_CPP([GLIBC_210], [
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 10)
+ GLIBC_210
+ #endif
+#endif
+],
+GLIBC_VERSION="2.10")
+
AC_EGREP_CPP([AIX5_LIBC], [
#include <standards.h>
#if defined(_AIXVERSION_510) || defined(_AIXVERSION_520) || defined(_AIXVERSION_530)
@@ -728,6 +738,13 @@
DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
;;
+ 2.10)
+ AC_MSG_RESULT(2.10 family)
+ AC_DEFINE([GLIBC_2_10], 1, [Define to 1 if you're using glibc 2.10.x])
+ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
+ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
+ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
+ ;;
aix5)
AC_MSG_RESULT(AIX 5.1 or 5.2 or 5.3)
AC_DEFINE([AIX5_LIBC], 1, [Define to 1 if you're using AIX 5.1 or 5.2 or 5.3])
@@ -741,7 +758,7 @@
*)
AC_MSG_RESULT(unsupported version)
- AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.9])
+ AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.10])
AC_MSG_ERROR([or AIX 5.1 or 5.2 or 5.3 GLIBC_VERSION])
AC_MSG_ERROR([or Darwin libc])
;;
|
|
From: <sv...@va...> - 2009-05-19 07:39:49
|
Author: njn
Date: 2009-05-19 08:39:40 +0100 (Tue, 19 May 2009)
New Revision: 9979
Log:
Merge r9978 (configure tweak) from the trunk.
Modified:
branches/DARWIN/configure.in
Modified: branches/DARWIN/configure.in
===================================================================
--- branches/DARWIN/configure.in 2009-05-19 07:39:22 UTC (rev 9978)
+++ branches/DARWIN/configure.in 2009-05-19 07:39:40 UTC (rev 9979)
@@ -371,7 +371,7 @@
VGCONF_PLATFORM_SEC_CAPS=""
valt_load_address_normal="0x38000000"
valt_load_address_inner="0x28000000"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
amd64-linux)
if test x$vg_cv_only64bit = xyes; then
@@ -389,7 +389,7 @@
fi
valt_load_address_normal="0x38000000"
valt_load_address_inner="0x28000000"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
ppc32-linux)
VGCONF_ARCH_PRI="ppc32"
@@ -397,7 +397,7 @@
VGCONF_PLATFORM_SEC_CAPS=""
valt_load_address_normal="0x38000000"
valt_load_address_inner="0x28000000"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
ppc64-aix5)
if test x$vg_cv_only64bit = xyes; then
@@ -415,7 +415,7 @@
fi
valt_load_address_normal="0x38000000"
valt_load_address_inner="0x28000000"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
ppc64-linux)
if test x$vg_cv_only64bit = xyes; then
@@ -434,7 +434,7 @@
fi
valt_load_address_normal="0x38000000"
valt_load_address_inner="0x28000000"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
x86-darwin)
VGCONF_ARCH_PRI="x86"
@@ -442,7 +442,7 @@
VGCONF_PLATFORM_SEC_CAPS=""
valt_load_address_normal="0x0"
valt_load_address_inner="0x0"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
amd64-darwin)
if test x$vg_cv_only64bit = xyes; then
@@ -461,7 +461,7 @@
fi
valt_load_address_normal="0x0"
valt_load_address_inner="0x0"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
*)
VGCONF_ARCH_PRI="unknown"
|
|
From: <sv...@va...> - 2009-05-19 07:39:36
|
Author: njn
Date: 2009-05-19 08:39:22 +0100 (Tue, 19 May 2009)
New Revision: 9978
Log:
Use our CPU/OS variable when printing the results in configure.
Modified:
trunk/configure.in
Modified: trunk/configure.in
===================================================================
--- trunk/configure.in 2009-05-19 07:26:00 UTC (rev 9977)
+++ trunk/configure.in 2009-05-19 07:39:22 UTC (rev 9978)
@@ -340,7 +340,7 @@
VGCONF_PLATFORM_SEC_CAPS=""
valt_load_address_normal="0x38000000"
valt_load_address_inner="0x28000000"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
amd64-linux)
if test x$vg_cv_only64bit = xyes; then
@@ -358,7 +358,7 @@
fi
valt_load_address_normal="0x38000000"
valt_load_address_inner="0x28000000"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
ppc32-linux)
VGCONF_ARCH_PRI="ppc32"
@@ -366,7 +366,7 @@
VGCONF_PLATFORM_SEC_CAPS=""
valt_load_address_normal="0x38000000"
valt_load_address_inner="0x28000000"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
ppc64-aix5)
if test x$vg_cv_only64bit = xyes; then
@@ -384,7 +384,7 @@
fi
valt_load_address_normal="0x38000000"
valt_load_address_inner="0x28000000"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
ppc64-linux)
if test x$vg_cv_only64bit = xyes; then
@@ -403,13 +403,13 @@
fi
valt_load_address_normal="0x38000000"
valt_load_address_inner="0x28000000"
- AC_MSG_RESULT([ok (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([ok (${ARCH_MAX}-${VGCONF_OS})])
;;
*)
VGCONF_ARCH_PRI="unknown"
VGCONF_PLATFORM_PRI_CAPS="UNKNOWN"
VGCONF_PLATFORM_SEC_CAPS="UNKNOWN"
- AC_MSG_RESULT([no (${host_cpu}-${host_os})])
+ AC_MSG_RESULT([no (${ARCH_MAX}-${VGCONF_OS})])
AC_MSG_ERROR([Valgrind is platform specific. Sorry. Please consider doing a port.])
;;
esac
|
|
From: Nicholas N. <n.n...@gm...> - 2009-05-19 07:32:30
|
On Tue, May 19, 2009 at 5:29 PM, Julian Seward <js...@ac...> wrote: >> >> Is it necessary to include .c files in EXTRA_DIST ? > > No. I think the .c files for the tarball are inferred from the names > in check_PROGRAMS. > > Hmm, but then drd/tests/Makefile.am has various conditional additions > to check_PROGRAMS: > > if HAVE_BOOST_1_35 > check_PROGRAMS += boost_thread > endif > > So if my theory is correct, then the .c files included in the tarball > depends what the configure script on the machine running 'make dist' > found. Which is obviously very bad. > > So, uh, once again confused by the build system. Nick, any ideas? Putting the .c file in EXTRA_DIST caused problems? Nick |
|
From: Nicholas N. <n.n...@gm...> - 2009-05-19 07:29:45
|
On Tue, May 19, 2009 at 5:18 PM, Julian Seward <js...@ac...> wrote:
>
>> Modified: trunk/coregrind/m_libcassert.c
>> ===================================================================
>> --- trunk/coregrind/m_libcassert.c 2009-05-19 05:23:29 UTC (rev 9950)
>> +++ trunk/coregrind/m_libcassert.c 2009-05-19 05:28:43 UTC (rev 9951)
>> @@ -99,14 +99,15 @@
>> /* Pull down the entire world */
>> void VG_(exit)( Int status )
>> {
>> -# if defined(VGO_linux)
>> +#if defined(VGO_linux)
>> (void)VG_(do_syscall1)(__NR_exit_group, status );
>> -# endif
>> +#elif defined(VGO_aix5)
>> (void)VG_(do_syscall1)(__NR_exit, status );
>> - /* Why are we still alive here? */
>> +#else
>> +# error Unknown OS
>> +#endif
>> /*NOTREACHED*/
>> - *(volatile Int *)0 = 'x';
>> - vg_assert(2+2 == 5);
>> + VG_(core_panic)("VG_(exit) didn't work?");
>> }
>
> The point of the write to zero here was to take the process out
> with SIGSEGV if the syscall failed to do so. Doesn't VG_(core_panic)
> eventually lead back to VG_(exit) ?
You're right, but dereferencing zero seems like a bad way to do it.
GCC has __builtin_trap() -- that might be better.
N
|
|
From: Julian S. <js...@ac...> - 2009-05-19 07:26:46
|
On Tuesday 19 May 2009, Bart Van Assche wrote: > On Tue, May 19, 2009 at 8:47 AM, Nicholas Nethercote > > <n.n...@gm...> wrote: > > On Tue, May 19, 2009 at 4:24 PM, <sv...@va...> wrote: > >> Author: bart > >> Date: 2009-05-19 07:24:51 +0100 (Tue, 19 May 2009) > >> New Revision: 9969 > >> > >> Log: > >> Merged missing part of r9900 from the MESSAGING_TIDYUP branch. > >> > >> Modified: > >> trunk/drd/tests/Makefile.am > >> > >> - pth_process_shared_mutex.c \ > > > > drd/tests/pth_process_shared_mutex.c still exists. Why was it removed > > from the Makefile.am? > > Is it necessary to include .c files in EXTRA_DIST ? No. I think the .c files for the tarball are inferred from the names in check_PROGRAMS. Hmm, but then drd/tests/Makefile.am has various conditional additions to check_PROGRAMS: if HAVE_BOOST_1_35 check_PROGRAMS += boost_thread endif So if my theory is correct, then the .c files included in the tarball depends what the configure script on the machine running 'make dist' found. Which is obviously very bad. So, uh, once again confused by the build system. Nick, any ideas? J |
|
From: <sv...@va...> - 2009-05-19 07:26:19
|
Author: njn
Date: 2009-05-19 08:26:00 +0100 (Tue, 19 May 2009)
New Revision: 9977
Log:
Trunk sync: don't insist on GNU sed.
Modified:
branches/DARWIN/configure.in
Modified: branches/DARWIN/configure.in
===================================================================
--- branches/DARWIN/configure.in 2009-05-19 07:25:42 UTC (rev 9976)
+++ branches/DARWIN/configure.in 2009-05-19 07:26:00 UTC (rev 9977)
@@ -95,26 +95,6 @@
])
-# Check we have GNU sed: some of the stuff done by "make install" relies
-# on some pretty fancy sed expressions, and AIX sed doesn't produce the
-# same results, causing install to fail
-# GrP
-#AC_MSG_CHECKING([for GNU sed])
-
-#[sed_firstline=`sed --version | head -n 1`]
-
-#case "${sed_firstline}" in
-# GNU*)
-# AC_MSG_RESULT([ok, looks like GNU sed])
-# ;;
-# *)
-# AC_MSG_RESULT([please ensure first 'sed' in your path is GNU sed])
-# AC_MSG_RESULT([note: GNU sed is only required at build/install time])
-# AC_MSG_ERROR([build/install requires that 'sed' is GNU sed])
-# ;;
-#esac
-
-
# Check if 'diff' supports -u (universal diffs) and use it if possible.
AC_MSG_CHECKING([for diff -u])
|
|
From: <sv...@va...> - 2009-05-19 07:25:48
|
Author: njn
Date: 2009-05-19 08:25:42 +0100 (Tue, 19 May 2009)
New Revision: 9976
Log:
DARWIN sync: don't insist on GNU sed.
Modified:
trunk/configure.in
Modified: trunk/configure.in
===================================================================
--- trunk/configure.in 2009-05-19 07:01:44 UTC (rev 9975)
+++ trunk/configure.in 2009-05-19 07:25:42 UTC (rev 9976)
@@ -94,26 +94,6 @@
])
-# Check we have GNU sed: some of the stuff done by "make install" relies
-# on some pretty fancy sed expressions, and AIX sed doesn't produce the
-# same results, causing install to fail
-
-AC_MSG_CHECKING([for GNU sed])
-
-[sed_firstline=`sed --version | head -n 1`]
-
-case "${sed_firstline}" in
- GNU*)
- AC_MSG_RESULT([ok, looks like GNU sed])
- ;;
- *)
- AC_MSG_RESULT([please ensure first 'sed' in your path is GNU sed])
- AC_MSG_RESULT([note: GNU sed is only required at build/install time])
- AC_MSG_ERROR([build/install requires that 'sed' is GNU sed])
- ;;
-esac
-
-
# Check if 'diff' supports -u (universal diffs) and use it if possible.
AC_MSG_CHECKING([for diff -u])
|
|
From: Julian S. <js...@ac...> - 2009-05-19 07:15:48
|
> Modified: trunk/coregrind/m_libcassert.c
> ===================================================================
> --- trunk/coregrind/m_libcassert.c 2009-05-19 05:23:29 UTC (rev 9950)
> +++ trunk/coregrind/m_libcassert.c 2009-05-19 05:28:43 UTC (rev 9951)
> @@ -99,14 +99,15 @@
> /* Pull down the entire world */
> void VG_(exit)( Int status )
> {
> -# if defined(VGO_linux)
> +#if defined(VGO_linux)
> (void)VG_(do_syscall1)(__NR_exit_group, status );
> -# endif
> +#elif defined(VGO_aix5)
> (void)VG_(do_syscall1)(__NR_exit, status );
> - /* Why are we still alive here? */
> +#else
> +# error Unknown OS
> +#endif
> /*NOTREACHED*/
> - *(volatile Int *)0 = 'x';
> - vg_assert(2+2 == 5);
> + VG_(core_panic)("VG_(exit) didn't work?");
> }
The point of the write to zero here was to take the process out
with SIGSEGV if the syscall failed to do so. Doesn't VG_(core_panic)
eventually lead back to VG_(exit) ?
J
|
|
From: <sv...@va...> - 2009-05-19 07:02:01
|
Author: njn
Date: 2009-05-19 08:01:44 +0100 (Tue, 19 May 2009)
New Revision: 9975
Log:
Trunk sync: tweak conditional compilation guards.
Modified:
branches/DARWIN/coregrind/m_libcfile.c
Modified: branches/DARWIN/coregrind/m_libcfile.c
===================================================================
--- branches/DARWIN/coregrind/m_libcfile.c 2009-05-19 06:55:50 UTC (rev 9974)
+++ branches/DARWIN/coregrind/m_libcfile.c 2009-05-19 07:01:44 UTC (rev 9975)
@@ -110,12 +110,14 @@
SysRes VG_(open) ( const Char* pathname, Int flags, Int mode )
{
-# if defined(VGO_darwin)
+# if defined(VGO_linux) || defined(VGO_aix5)
+ SysRes res = VG_(do_syscall3)(__NR_open,
+ (UWord)pathname, flags, mode);
+# elif defined(VGO_darwin)
SysRes res = VG_(do_syscall3)(__NR_open_nocancel,
(UWord)pathname, flags, mode);
# else
- SysRes res = VG_(do_syscall3)(__NR_open,
- (UWord)pathname, flags, mode);
+# error Unknown OS
# endif
return res;
}
@@ -123,20 +125,24 @@
void VG_(close) ( Int fd )
{
/* Hmm. Return value is not checked. That's uncool. */
-# if defined(VGO_darwin)
+# if defined(VGO_linux) || defined(VGO_aix5)
+ (void)VG_(do_syscall1)(__NR_close, fd);
+# elif defined(VGO_darwin)
(void)VG_(do_syscall1)(__NR_close_nocancel, fd);
# else
- (void)VG_(do_syscall1)(__NR_close, fd);
+# error Unknown OS
# endif
}
Int VG_(read) ( Int fd, void* buf, Int count)
{
Int ret;
-# if defined(VGO_darwin)
+# if defined(VGO_linux) || defined(VGO_aix5)
+ SysRes res = VG_(do_syscall3)(__NR_read, fd, (UWord)buf, count);
+# elif defined(VGO_darwin)
SysRes res = VG_(do_syscall3)(__NR_read_nocancel, fd, (UWord)buf, count);
# else
- SysRes res = VG_(do_syscall3)(__NR_read, fd, (UWord)buf, count);
+# error Unknown OS
# endif
if (sr_isError(res)) {
ret = - (Int)(Word)sr_Err(res);
@@ -352,10 +358,12 @@
/* Returns -1 on error. */
Int VG_(fcntl) ( Int fd, Int cmd, Addr arg )
{
-# if defined(VGO_darwin)
+# if defined(VGO_linux) || defined(VGO_aix5)
+ SysRes res = VG_(do_syscall3)(__NR_fcntl, fd, cmd, arg);
+# elif defined(VGO_darwin)
SysRes res = VG_(do_syscall3)(__NR_fcntl_nocancel, fd, cmd, arg);
# else
- SysRes res = VG_(do_syscall3)(__NR_fcntl, fd, cmd, arg);
+# error "Unknown OS"
# endif
return sr_isError(res) ? -1 : sr_Res(res);
}
|