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
(1) |
2
(3) |
|
3
(6) |
4
(2) |
5
(2) |
6
(5) |
7
(4) |
8
(3) |
9
(3) |
|
10
(4) |
11
(7) |
12
(3) |
13
(4) |
14
|
15
|
16
|
|
17
|
18
|
19
(6) |
20
|
21
|
22
|
23
|
|
24
|
25
|
26
|
27
(2) |
28
|
29
|
30
|
|
From: Mark W. <ma...@so...> - 2022-04-08 13:36:54
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=7b5867b1fda1dbadc1291988828f6d6ad9438144 commit 7b5867b1fda1dbadc1291988828f6d6ad9438144 Author: Mark Wielaard <ma...@kl...> Date: Fri Apr 8 14:58:38 2022 +0200 helgrind reports false races for printfs using mempcpy on FILE* state We already have a suppression for helgrind which is for when glibc uses __GI_mempcpy to manipulate internal FILE state (this was bug 352130). But since glibc-2.26 mempcpy is used instead __GI_mempcpy, making the suppresion from the original bug obsolete. This patch adds a new suppression using mempcpy but doesn't replace the original suppression for older systems. Patch adding suppression + testcase by Jesus Checa <jc...@re...> https://bugs.kde.org/show_bug.cgi?id=450962 Diff: --- .gitignore | 1 + glibc-2.X-helgrind.supp.in | 8 ++++ helgrind/tests/Makefile.am | 2 + helgrind/tests/pth_mempcpy_false_races.c | 50 +++++++++++++++++++++++ helgrind/tests/pth_mempcpy_false_races.stderr.exp | 0 helgrind/tests/pth_mempcpy_false_races.vgtest | 3 ++ 6 files changed, 64 insertions(+) diff --git a/.gitignore b/.gitignore index 5026fcbc78..94ff17d299 100644 --- a/.gitignore +++ b/.gitignore @@ -666,6 +666,7 @@ /helgrind/tests/Makefile.in /helgrind/tests/pth_barrier /helgrind/tests/pth_destroy_cond +/helgrind/tests/pth_mempcpy_false_races /helgrind/tests/rwlock_race /helgrind/tests/rwlock_test /helgrind/tests/shmem_abits diff --git a/glibc-2.X-helgrind.supp.in b/glibc-2.X-helgrind.supp.in index cecf3ceab9..8e1a10fa55 100644 --- a/glibc-2.X-helgrind.supp.in +++ b/glibc-2.X-helgrind.supp.in @@ -54,6 +54,14 @@ obj:@GLIBC_LIBC_PATH@ } +{ + helgrind-glibc-io-xsputn-mempcpy-glibc2-26+ + Helgrind:Race + fun:mempcpy + fun:_IO_*xsputn* + obj:@GLIBC_LIBC_PATH@ +} + { helgrind-glibc2X-005 Helgrind:Race diff --git a/helgrind/tests/Makefile.am b/helgrind/tests/Makefile.am index cf7f76d46a..05e145f7b8 100755 --- a/helgrind/tests/Makefile.am +++ b/helgrind/tests/Makefile.am @@ -58,6 +58,7 @@ EXTRA_DIST = \ pth_cond_destroy_busy.stderr.exp-ppc64 \ pth_cond_destroy_busy.stderr.exp-solaris \ pth_cond_destroy_busy.stderr.exp-freebsd \ + pth_mempcpy_false_races.vgtest pth_mempcpy_false_races.stderr.exp \ pth_spinlock.vgtest pth_spinlock.stdout.exp pth_spinlock.stderr.exp \ rwlock_race.vgtest rwlock_race.stdout.exp rwlock_race.stderr.exp \ rwlock_test.vgtest rwlock_test.stdout.exp rwlock_test.stderr.exp \ @@ -152,6 +153,7 @@ check_PROGRAMS = \ locked_vs_unlocked2 \ locked_vs_unlocked3 \ pth_destroy_cond \ + pth_mempcpy_false_races \ shmem_abits \ stackteardown \ t2t \ diff --git a/helgrind/tests/pth_mempcpy_false_races.c b/helgrind/tests/pth_mempcpy_false_races.c new file mode 100644 index 0000000000..90716435d6 --- /dev/null +++ b/helgrind/tests/pth_mempcpy_false_races.c @@ -0,0 +1,50 @@ +/* Related bugs: + * https://bugs.kde.org/show_bug.cgi?id=352130 + * https://bugs.kde.org/show_bug.cgi?id=450962 + * This reproducer has no real race conditions but since helgrind doesn't see + * or know about the glibc internal locking done for FILE *state, it will report + * a race when several threads run printf due to this fact. + */ + +#include <stdio.h> +#include <pthread.h> + +pthread_t thread; + +void* thread3 (void* d) +{ + int count3 = 0; + + while(count3 < 100){ + printf("Thread 3: %d\n", count3++); + } + return NULL; +} + +void* thread2 (void* d) +{ + int count2 = 0; + + while(count2 < 1000){ + // + printf("Thread 2: %d\n", count2++); + } + return NULL; +} + +int main (){ + + pthread_create (&thread, NULL, thread2, NULL); + pthread_create (&thread, NULL, thread3, NULL); + + //Thread 1 + int count1 = 0; + + while(count1 < 10){ + printf("Thread 1: %d\n", count1++); + } + + pthread_join(thread,NULL); + return 0; +} + diff --git a/helgrind/tests/pth_mempcpy_false_races.stderr.exp b/helgrind/tests/pth_mempcpy_false_races.stderr.exp new file mode 100644 index 0000000000..e69de29bb2 diff --git a/helgrind/tests/pth_mempcpy_false_races.vgtest b/helgrind/tests/pth_mempcpy_false_races.vgtest new file mode 100644 index 0000000000..9e3c6d4b45 --- /dev/null +++ b/helgrind/tests/pth_mempcpy_false_races.vgtest @@ -0,0 +1,3 @@ +prog: pth_mempcpy_false_races +vgopts: -q +stdout_filter: ../../gdbserver_tests/filter_make_empty |
|
From: Mark W. <ma...@kl...> - 2022-04-08 10:26:09
|
Hi valgrind hackers, On Sat, 2022-04-02 at 21:51 +0200, Mark Wielaard wrote: > An RC1 tarball for 3.19.0 is now available at > ftp://sourceware.org/pub/valgrind/valgrind-3.19.0.RC1.tar.bz2 > https://sourceware.org/pub/valgrind/valgrind-3.19.0.RC1.tar.bz2 > (md5sum = d784310ca4c159e4d6c36c7dacffc3ed) > > Please give it a try in configurations that are important for you and > report any problems you have, either on this mailing list, or > (preferably) via our bug tracker at > https://bugs.kde.org/enter_bug.cgi?product=valgrind > > There are are couple of issues I like to look into which have patches > that need review: > 451878 Add support for new syscall memfd_secret > 450437 Warn for execve syscall with argv or argv[0] being NULL. > 445011 SIGCHLD is sent when valgrind uses debuginfod-find > > And this not yet fully understood issue: > 452058 Generated suppressions contain a mix of mangled (physical) > and demangled (inline) frames > > If there are any other urgent issues please do propose patches. > > I'll like to do an RC2 on Wednesday, with a final release on Friday, > April 8th if everything goes well. So, I didn't make the RC2 on Wednesday because we are still fixing some bugs (although in general things look pretty good). I'll do an RC2 later today (Friday) and if that looks good after some more testing do the final 3.19.0 release on Monday (April 11). Cheers, Mark |
|
From: Mark W. <ma...@so...> - 2022-04-08 07:52:22
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=a1bb40171ab2289043856c6893522449ccc9fdff commit a1bb40171ab2289043856c6893522449ccc9fdff Author: Mark Wielaard <ma...@kl...> Date: Fri Apr 8 09:42:10 2022 +0200 Move ht_sigchld_ignore and ht_ignore_node to pub_tool_signals.h ht_sigchld_ignore and ht_ignore_node were defined in pub_core_signals.h which cannot include any other tool header. ...checking header files and include directives *** File coregrind/pub_core_signals.h must not include pub_tool_hashtable.h So move the definition and type to pub_tool_signals.h Diff: --- coregrind/pub_core_signals.h | 10 ---------- include/pub_tool_signals.h | 10 ++++++++++ 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/coregrind/pub_core_signals.h b/coregrind/pub_core_signals.h index 1c86ee5f63..ae8555ba80 100644 --- a/coregrind/pub_core_signals.h +++ b/coregrind/pub_core_signals.h @@ -35,7 +35,6 @@ #include "pub_tool_signals.h" // I want to get rid of this header... #include "pub_core_vki.h" // vki_sigset_t et al. -#include "pub_tool_hashtable.h" /* Highest signal the kernel will let us use */ extern Int VG_(max_signal); @@ -86,15 +85,6 @@ extern Bool VG_(extend_stack)(ThreadId tid, Addr addr); before using that signal to kill the process. */ extern void VG_(set_default_handler)(Int sig); -/* Hash table of PIDs from which SIGCHLD is ignored. */ -extern VgHashTable *ht_sigchld_ignore; - -/* Hash table node where each key represents a PID. */ -typedef struct _ht_ignore_node { - struct _ht_ignore_node *next; - UWord key; -} ht_ignore_node; - #endif // __PUB_CORE_SIGNALS_H /*--------------------------------------------------------------------*/ diff --git a/include/pub_tool_signals.h b/include/pub_tool_signals.h index 0de30465c1..f037cd5d7e 100644 --- a/include/pub_tool_signals.h +++ b/include/pub_tool_signals.h @@ -30,6 +30,7 @@ #define __PUB_TOOL_SIGNALS_H #include "pub_tool_basics.h" // Addr +#include "pub_tool_hashtable.h" // VgHashTable // Register an interest in apparently internal faults; used code which // wanders around dangerous memory (ie, leakcheck). The catcher is @@ -43,6 +44,15 @@ typedef void (*fault_catcher_t)(Int sig, Addr addr); extern fault_catcher_t VG_(set_fault_catcher)(fault_catcher_t catcher); +/* Hash table of PIDs from which SIGCHLD is ignored. */ +extern VgHashTable *ht_sigchld_ignore; + +/* Hash table node where each key represents a PID. */ +typedef struct _ht_ignore_node { + struct _ht_ignore_node *next; + UWord key; +} ht_ignore_node; + #endif // __PUB_TOOL_SIGNALS_H /*--------------------------------------------------------------------*/ |