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
(6) |
|
2
(4) |
3
(9) |
4
(11) |
5
(16) |
6
(6) |
7
(1) |
8
(11) |
|
9
(11) |
10
(6) |
11
(10) |
12
(23) |
13
(23) |
14
(6) |
15
(10) |
|
16
(5) |
17
(13) |
18
(9) |
19
(4) |
20
(6) |
21
(16) |
22
(3) |
|
23
(5) |
24
(7) |
25
(6) |
26
(4) |
27
(8) |
28
|
29
(3) |
|
30
(2) |
31
(17) |
|
|
|
|
|
|
From: <sv...@va...> - 2015-08-27 17:57:03
|
Author: florian
Date: Thu Aug 27 18:56:56 2015
New Revision: 15595
Log:
Announce new command line option.
Modified:
trunk/NEWS
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Thu Aug 27 18:56:56 2015
@@ -47,6 +47,11 @@
assembly sequences. This gives speedups in the region of 0% to 7%
for those targets only.
+ - New command line option: --expensive-definedness-check=<yes|no> which
+ is usefult to avoid occasional invalid complaints on optimised code.
+ Watchout for runtime degradation: 25% have been observed but, as always,
+ this is highly application specific.
+
* Massif:
- New monitor command 'all_snapshots <filename>' that dumps all
@@ -192,6 +197,8 @@
339808 Fix none/tests/rlimit64_nofile test on Mac OS X 10.9
339820 vex amd64->IR: 0x66 0xF 0x3A 0x63 0xA 0x42 0x74 0x9 (pcmpistri $0x42)
340115 Fix none/tests/cmdline[1|2] tests on systems which define TMPDIR
+340392 Allow user to select more accurate definedness checking in memcheck
+ to avoid invalid complaints on optimised code
340430 Fix some grammatical weirdness in the manual.
341238 Recognize GCC5/DWARFv5 DW_LANG constants (Go, C11, C++11, C++14)
341419 Signal handler ucontext_t not filled out correctly on OS X
|
Author: florian
Date: Thu Aug 27 18:50:47 2015
New Revision: 15594
Log:
New memcheck command line option: --expensive-definedness-check
Pertains to BZ #340392
Added:
trunk/memcheck/tests/bug340392.c
trunk/memcheck/tests/bug340392.stderr.exp
trunk/memcheck/tests/bug340392.vgtest
Modified:
trunk/memcheck/docs/mc-manual.xml
trunk/memcheck/mc_include.h
trunk/memcheck/mc_main.c
trunk/memcheck/mc_translate.c
trunk/memcheck/tests/ (props changed)
trunk/memcheck/tests/Makefile.am
Modified: trunk/memcheck/docs/mc-manual.xml
==============================================================================
--- trunk/memcheck/docs/mc-manual.xml (original)
+++ trunk/memcheck/docs/mc-manual.xml Thu Aug 27 18:50:47 2015
@@ -970,6 +970,24 @@
</listitem>
</varlistentry>
+ <varlistentry id="opt.expensive-definedness-check" xreflabel="--expensive-definedness-check">
+ <term>
+ <option><![CDATA[--expensive-definedness-check=<yes|no> [default: no] ]]></option>
+ </term>
+ <listitem>
+ <para>Controls whether Memcheck should employ more precise but also more
+ expensive (time consuming) algorithms when checking the definedness of a
+ value. The default setting is not to do that and it is usually
+ sufficient. However, for highly optimised code valgrind may sometimes
+ incorrectly complain.
+ Invoking valgrind with <option>--expensive-definedness-check==yes</option>
+ helps but comes at a performance cost. Runtime degradation of
+ 25% have been observed but the extra cost depends a lot on the
+ application at hand.
+ </para>
+ </listitem>
+ </varlistentry>
+
<varlistentry id="opt.keep-stacktraces" xreflabel="--keep-stacktraces">
<term>
<option><![CDATA[--keep-stacktraces=alloc|free|alloc-and-free|alloc-then-free|none [default: alloc-then-free] ]]></option>
Modified: trunk/memcheck/mc_include.h
==============================================================================
--- trunk/memcheck/mc_include.h (original)
+++ trunk/memcheck/mc_include.h Thu Aug 27 18:50:47 2015
@@ -695,6 +695,9 @@
/* Should we show mismatched frees? Default: YES */
extern Bool MC_(clo_show_mismatched_frees);
+/* Should we use expensive definedness checking for add/sub and compare
+ operations? Default: NO */
+extern Bool MC_(clo_expensive_definedness_check);
/*------------------------------------------------------------*/
/*--- Instrumentation ---*/
Modified: trunk/memcheck/mc_main.c
==============================================================================
--- trunk/memcheck/mc_main.c (original)
+++ trunk/memcheck/mc_main.c Thu Aug 27 18:50:47 2015
@@ -5711,6 +5711,7 @@
KeepStacktraces MC_(clo_keep_stacktraces) = KS_alloc_then_free;
Int MC_(clo_mc_level) = 2;
Bool MC_(clo_show_mismatched_frees) = True;
+Bool MC_(clo_expensive_definedness_check) = False;
static const HChar * MC_(parse_leak_heuristics_tokens) =
"-,stdstring,length64,newarray,multipleinheritance";
@@ -5857,6 +5858,8 @@
else if VG_BOOL_CLO(arg, "--show-mismatched-frees",
MC_(clo_show_mismatched_frees)) {}
+ else if VG_BOOL_CLO(arg, "--expensive-definedness-check",
+ MC_(clo_expensive_definedness_check)) {}
else
return VG_(replacement_malloc_process_cmd_line_option)(arg);
Modified: trunk/memcheck/mc_translate.c
==============================================================================
--- trunk/memcheck/mc_translate.c (original)
+++ trunk/memcheck/mc_translate.c Thu Aug 27 18:50:47 2015
@@ -6313,29 +6313,35 @@
}
tl_assert( VG_(sizeXA)( mce.tmpMap ) == sb_in->tyenv->types_used );
- /* Make a preliminary inspection of the statements, to see if there
- are any dodgy-looking literals. If there are, we generate
- extra-detailed (hence extra-expensive) instrumentation in
- places. Scan the whole bb even if dodgyness is found earlier,
- so that the flatness assertion is applied to all stmts. */
- Bool bogus = False;
-
- for (i = 0; i < sb_in->stmts_used; i++) {
- st = sb_in->stmts[i];
- tl_assert(st);
- tl_assert(isFlatIRStmt(st));
-
- if (!bogus) {
- bogus = checkForBogusLiterals(st);
- if (0 && bogus) {
- VG_(printf)("bogus: ");
- ppIRStmt(st);
- VG_(printf)("\n");
+ if (MC_(clo_expensive_definedness_check)) {
+ /* For expensive definedness checking skip looking for bogus
+ literals. */
+ mce.bogusLiterals = True;
+ } else {
+ /* Make a preliminary inspection of the statements, to see if there
+ are any dodgy-looking literals. If there are, we generate
+ extra-detailed (hence extra-expensive) instrumentation in
+ places. Scan the whole bb even if dodgyness is found earlier,
+ so that the flatness assertion is applied to all stmts. */
+ Bool bogus = False;
+
+ for (i = 0; i < sb_in->stmts_used; i++) {
+ st = sb_in->stmts[i];
+ tl_assert(st);
+ tl_assert(isFlatIRStmt(st));
+
+ if (!bogus) {
+ bogus = checkForBogusLiterals(st);
+ if (0 && bogus) {
+ VG_(printf)("bogus: ");
+ ppIRStmt(st);
+ VG_(printf)("\n");
+ }
+ if (bogus) break;
}
- if (bogus) break;
}
+ mce.bogusLiterals = bogus;
}
- mce.bogusLiterals = bogus;
/* Copy verbatim any IR preamble preceding the first IMark */
Modified: trunk/memcheck/tests/Makefile.am
==============================================================================
--- trunk/memcheck/tests/Makefile.am (original)
+++ trunk/memcheck/tests/Makefile.am Thu Aug 27 18:50:47 2015
@@ -84,6 +84,7 @@
buflen_check.stderr.exp-kfail \
bug155125.stderr.exp bug155125.vgtest \
bug287260.stderr.exp bug287260.vgtest \
+ bug340392.stderr.exp bug340392.vgtest \
calloc-overflow.stderr.exp calloc-overflow.vgtest\
client-msg.stderr.exp client-msg.vgtest \
client-msg-as-xml.stderr.exp client-msg-as-xml.vgtest \
@@ -308,6 +309,7 @@
buflen_check \
bug155125 \
bug287260 \
+ bug340392 \
calloc-overflow \
client-msg \
clientperm \
@@ -418,6 +420,7 @@
demangle_SOURCES = demangle.cpp
+bug340392_CFLAGS = $(AM_CFLAGS) -O3
dw4_CFLAGS = $(AM_CFLAGS) -gdwarf-4 -fdebug-types-section
descr_belowsp_LDADD = -lpthread
Added: trunk/memcheck/tests/bug340392.c
==============================================================================
--- trunk/memcheck/tests/bug340392.c (added)
+++ trunk/memcheck/tests/bug340392.c Thu Aug 27 18:50:47 2015
@@ -0,0 +1,26 @@
+#include <stdlib.h>
+
+typedef struct {
+ unsigned char c;
+ int i;
+ void *foo;
+} S;
+
+S *make_s (void);
+
+int
+main (int argc, char **argv)
+{
+ S *s = make_s ();
+ if (s->c == 0 && s->i == 1 && s->foo == getenv ("BLAH"))
+ abort();
+ return 0;
+}
+
+S *
+make_s (void)
+{
+ S *res = malloc (sizeof (S));
+ res->c = 1;
+ return res;
+}
Added: trunk/memcheck/tests/bug340392.stderr.exp
==============================================================================
(empty)
Added: trunk/memcheck/tests/bug340392.vgtest
==============================================================================
--- trunk/memcheck/tests/bug340392.vgtest (added)
+++ trunk/memcheck/tests/bug340392.vgtest Thu Aug 27 18:50:47 2015
@@ -0,0 +1,10 @@
+# When run without --expensive-definedness-check valgrind
+# produces:
+#
+# ==10953== Conditional jump or move depends on uninitialised value(s)
+# ==10953== at 0x4004F8: main (bug340392.c:15)
+#
+# Making sure we don't get the message.
+#
+prog: bug340392
+vgopts: -q --expensive-definedness-check=yes
|
|
From: Ivo R. <ivo...@gm...> - 2015-08-27 14:32:52
|
I am currently adding ldsoexec support on Solaris: https://bugs.kde.org/show_bug.cgi?id=351858 The changes are mostly Solaris specific but I need a way from the aspacemgr to tell me if a given address range is either free or reserved. So I added a new function for that: Index: coregrind/m_aspacemgr/aspacemgr-linux.c =================================================================== --- coregrind/m_aspacemgr/aspacemgr-linux.c (revision 15593) +++ coregrind/m_aspacemgr/aspacemgr-linux.c (working copy) @@ -1265,7 +1265,16 @@ return is_valid_for(kinds, start, len, prot); } +/* Checks if a piece of memory consists of either free or reservation + segments. */ +Bool VG_(am_is_free_or_resvn)( Addr start, SizeT len ) +{ + const UInt kinds = SkFree | SkResvn; + return is_valid_for(kinds, start, len, 0); +} + + Index: coregrind/pub_core_aspacemgr.h =================================================================== --- coregrind/pub_core_aspacemgr.h (revision 15593) +++ coregrind/pub_core_aspacemgr.h (working copy) @@ -94,6 +94,10 @@ extern Bool VG_(am_is_valid_for_client_or_free_or_resvn) ( Addr start, SizeT len, UInt prot ); +/* Checks if a piece of memory consists of either free or reservation + segments. */ +extern Bool VG_(am_is_free_or_resvn)( Addr start, SizeT len ); + /* Check whether ADDR looks like an address or address-to-be located in an extensible client stack segment. */ extern Bool VG_(am_addr_is_in_extensible_client_stack)( Addr addr ); Full patch is attached to the bug. Please let me know your comments. Kind regards, I. |
|
From: <sv...@va...> - 2015-08-27 12:43:41
|
Author: sewardj
Date: Thu Aug 27 13:43:32 2015
New Revision: 15593
Log:
First pass at tidying up the release notes for 3.11.0.
Modified:
trunk/NEWS
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Thu Aug 27 13:43:32 2015
@@ -1,57 +1,80 @@
-Release 3.11.0 (?? ????????? 201?)
+
+Release 3.11.0 (?? September 2015)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Release 3.11.0 is under development, not yet released.
+
+3.11.0 is a feature release with many improvements and the usual
+collection of bug fixes.
+
+This release supports X86/Linux, AMD64/Linux, ARM32/Linux,
+ARM64/Linux, PPC32/Linux, PPC64BE/Linux, PPC64LE/Linux, S390X/Linux,
+MIPS32/Linux, MIPS64/Linux, TILEGX/Linux, ARM/Android, ARM64/Android,
+MIPS32/Android, X86/Android, X86/Solaris, AMD64/Solaris,
+X86/MacOSX 10.10 and 10.11 and AMD64/MacOSX 10.10 and 10.11.
* ================== PLATFORM CHANGES =================
-* s390x: It is now required for the host to have the long displacement
- facility. The oldest supported machine model is z990.
+* Support for the Tilera TileGX architecture has been added.
+
+* Support for Solaris/x86 and Solaris/amd64 has been added.
-* x86: on an SSE2 only host, Valgrind in 32 bits now claims to be a Pentium 4.
- 3.10.1 was wrongly claiming to be a CORE 2, which is SSSE3.
+* Preliminary support for Mac OS X 10.11 (El Capitan) has been added.
-* Preliminary support for OS X 10.11 (El Capitan) has been added.
+* s390x: It is now required for the host to have the "long displacement"
+ facility. The oldest supported machine model is z990.
+
+* x86: on an SSE2 only host, Valgrind in 32 bit mode now claims to be a
+ Pentium 4. 3.10.1 wrongly claimed to be a Core 2, which is SSSE3.
+
+* The JIT's register allocator is significantly faster, making the JIT
+ as a whole somewhat faster, so JIT-intensive activities (like
+ program startup) are modestly faster, around 5%.
* ==================== TOOL CHANGES ====================
* Memcheck:
- - A new monitor command 'xb <addr> <len>' shows the validity bits
- of <len> bytes at <addr>. Below the validity bits, the byte
- values are shown using a layout similar to the GDB command
- 'x /<len>xb <addr>'. The monitor command 'xb' is easier to use than
- get_vbits (in particular on little endian computers) when you need to
- associate byte data value with their corresponding validity bits.
+
+ - A new monitor command 'xb <addr> <len>' shows the validity bits of
+ <len> bytes at <addr>. The monitor command 'xb' is easier to use
+ than get_vbits when you need to associate byte data value with
+ their corresponding validity bits.
- The 'block_list' monitor command now accepts an optional argument
- 'limited <max_blocks>' to control the nr of block addresses printed.
+ 'limited <max_blocks>' to control the nr of block addresses
+ printed.
+
+ - The C helper functions used to instrument loads on x86-linux and
+ arm-linux (both 32-bit only) have been replaced by handwritten
+ assembly sequences. This gives speedups in the region of 0% to 7%
+ for those targets only.
* Massif:
- - New monitor command 'all_snapshots <filename>' that dumps all snapshots
- taken so far.
+
+ - New monitor command 'all_snapshots <filename>' that dumps all
+ snapshots taken so far.
* Helgrind:
- - The default value for --conflict-cache-size=N has been doubled to 2000000.
- Users that were not using the default value should preferrably also
- double the value they give.
- The default was updaded due to the changes in the full history
- implementation. Doubling the value gives in average a slightly more
+
+ - Significant memory reduction and moderate speedups for
+ --history-level=full for applications accessing a lot of memory
+ with many different stacktraces.
+
+ - The default value for --conflict-cache-size=N has been doubled to
+ 2000000. Users that were not using the default value should
+ preferably also double the value they give.
+
+ The default was changed due to the changes in the "full history"
+ implementation. Doubling the value gives on average a slightly more
complete history and uses similar memory (or significantly less memory
- in the worst case) than the previous Helgrind version.
+ in the worst case) than the previous implementation.
- - Significant memory improvement and moderate speed improvement for
- --history-level=full for applications accessing a lot of memory with
- many different stacktraces.
-
- - The helgrind monitor command 'info locks' now accepts an optional
- argument 'lock_addr', to only show information about the lock at the
- given address.
+ - The Helgrind monitor command 'info locks' now accepts an optional
+ argument 'lock_addr', which shows information about the lock at the
+ given address only.
- - When using --history-level=full, the new helgrind monitor command
+ - When using --history-level=full, the new Helgrind monitor command
'accesshistory <addr> [<len>]' will show the recorded accesses for
<len> (or 1) bytes at <addr>.
-* Callgrind:
-
* ==================== OTHER CHANGES ====================
* The command line options --db-attach and --db-command have been removed.
@@ -69,36 +92,36 @@
searching/extracting errors in output files mixing valgrind
errors with program output.
-* New Option --max-threads=<number> can be used to change the
- number of threads valgrind can handle. The default is 500 threads
- which should be more than enough for most applications.
-
-* New Option --valgrind-stacksize=<number> can be used to change
- the size of the private thread stacks used by Valgrind.
- Useful to reduce memory use or increase the stack size if Valgrind
- segfaults due to stack exhausted.
-
-* New Option --avg-transtab-entry-size=<number> can be used to tune
- the size of the translation table sectors, either to gain memory
- or to avoid too many retranslations.
+* New option --max-threads=<number> can be used to change the number
+ of threads valgrind can handle. The default is 500 threads which
+ should be more than enough for most applications.
+
+* New option --valgrind-stacksize=<number> can be used to change the
+ size of the private thread stacks used by Valgrind. This is useful
+ for reducing memory use or increasing the stack size if Valgrind
+ segfaults due to stack overflow.
+
+* New option --avg-transtab-entry-size=<number> can be used to specify
+ the expected instrumented block size, either to reduce memory use or
+ to avoid excess retranslations.
-* Valgrind can be built with Intel's ICC compiler. The required
- compiler version is 14.0 or later.
+* Valgrind can be built with Intel's ICC compiler, version 14.0 or later.
* New and modified GDB server monitor features:
+
- When a signal is reported in GDB, you can now use the GDB convenience
variable $_siginfo to examine detailed signal information.
- - Valgrind gdbserver now allows the user to change the signal
- to deliver to the process. So, use 'signal SIGNAL' to continue execution
+ - Valgrind's gdbserver now allows the user to change the signal
+ to deliver to the process. So, use 'signal SIGNAL' to continue execution
with SIGNAL instead of the signal reported to GDB. Use 'signal 0' to
continue without passing the signal to the process.
- With recent GDB (>= 7.9.50.20150514-cvs), the command 'target remote'
will automatically load the executable file of the process running
under Valgrind. This means you do not need to specify the executable
- file yourself, GDB will discover it itself.
- See GDB documentation about 'qXfer:exec-file:read' packet for more info.
+ file yourself, GDB will discover it itself. See GDB documentation about
+ 'qXfer:exec-file:read' packet for more info.
* ==================== FIXED BUGS ====================
@@ -121,21 +144,17 @@
201435 Fix Darwin: -v does not show kernel version
208217 "Warning: noted but unhandled ioctl 0x2000747b" on Mac OS X
211256 Fixed an outdated comment regarding the default platform.
-211529 valgrind doesn't show proper call stacks for programs compiled
- by newer versions of visual c++
+211529 Incomplete call stacks for code compiled by newer versions of MSVC
211926 Avoid compilation warnings in valgrind.h with -pedantic
212291 Fix unhandled syscall: unix:132 (mkfifo) on OS X
== 263119
226609 Crediting upstream authors in man page
231257 Valgrind omits path when executing script from shebang line
-254164 OS X task_info: UNKNOWN task message [id 3405, to mach_task_self(),
- reply 0x........]
+254164 OS X task_info: UNKNOWN task message [id 3405, to mach_task_self() [..]
269360 s390x: Fix addressing mode selection for compare-and-swap
-302630 Memcheck on multithreaded program fails with Assertion
- 'sizeof(UWord) == sizeof(UInt)' failed in m_syscall.c
+302630 Memcheck: Assertion failed: 'sizeof(UWord) == sizeof(UInt)'
== 326797
-312989 ioctl handling needs to do POST handling on generic ioctls and
- needs to handle BPF ioctls
+312989 ioctl handling needs to do POST handling on generic ioctls and [..]
319274 Fix unhandled syscall: unix:410 (sigsuspend_nocancel) on OS X
324181 mmap does not handle MAP_32BIT (handle it now, rather than fail it)
327745 Fix valgrind 3.9.0 build fails on Mac OS X 10.6.8
@@ -180,14 +199,12 @@
segment if it is past the heap end
341613 Enable building of manythreads and thread-exits tests on Mac OS X
341615 Fix none/tests/darwin/access_extended test on Mac OS X
-341698 Valgrind's AESKEYGENASSIST gives wrong result in words 0 and 2
- when dest register = source register
+341698 Valgrind's AESKEYGENASSIST gives wrong result in words 0 and 2 [..]
341789 aarch64: shmat fails with valgrind on ARMv8
341997 MIPS64: Cavium OCTEON insns - immediate operand handled incorrectly
342038 Unhandled syscalls on aarch64 (mbind/get/set_mempolicy)
342063 wrong format specifier for test mcblocklistsearch in gdbserver_tests
-342117 Valgrind hangs after loading PDB file for MSVC compiled Firefox
- under Wine
+342117 Hang when loading PDB file for MSVC compiled Firefox under Wine
342221 socket connect false positive uninit memory for unknown af family
342353 Allow dumping full massif output while valgrind is still running
342571 Valgrind chokes on AVX compare intrinsic with _CMP_GE_QS
@@ -208,25 +225,19 @@
343306 OS X 10.10: UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option
343332 Unhandled instruction 0x9E310021 (fcvtmu) on aarch64
343335 unhandled instruction 0x1E638400 (fccmp) aarch64
-343523 OS X mach_ports_register: UNKNOWN task message [id 3403, to
- mach_task_self(), reply 0x30f]
-343525 OS X host_get_special_port: UNKNOWN host message [id 412, to
- mach_host_self(), reply 0x........]
+343523 OS X mach_ports_register: UNKNOWN task message [id 3403, to [..]
+343525 OS X host_get_special_port: UNKNOWN host message [id 412, to [..]
343597 ppc64le: incorrect use of offseof macro
-343649 OS X host_create_mach_voucher: UNKNOWN host message [id 222, to
- mach_host_self(), reply 0x........]
-343663 [OSX Yosemite 10.10.1] The memcheck tool always reports a
- leak regardless of the simplicity of the program.
+343649 OS X host_create_mach_voucher: UNKNOWN host message [id 222, to [..]
+343663 OS X 10.10 Memchecj always reports a leak regardless of [..]
343732 Unhandled syscall 144 (setgid) on aarch64
343733 Unhandled syscall 187 (msgctl and related) on aarch64
-343802 s390x: Fix false positives "conditional jump or move depends on
- unitialised value(s)"
+343802 s390x: False positive "conditional jump or move depends on [..]
343902 --vgdb=yes doesn't break when --xml=yes is used
343967 Don't warn about setuid/setgid/setcap executable for directories
343978 Recognize DWARF5/GCC5 DW_LANG_Fortran 2003 and 2008 constants
344007 accept4 syscall unhandled on arm64 (242) and ppc64 (344)
-344033 Helgrind on ARM32 loses track of mutex lockedness state in
- pthread_cond_wait
+344033 Helgrind on ARM32 loses track of mutex state in pthread_cond_wait
344054 www - update info for Solaris/illumos
344416 'make regtest' does not work cleanly on OS X
344235 Remove duplicate include of pub_core_aspacemgr.h
@@ -236,12 +247,10 @@
344314 callgrind_annotate ... warnings about commands containing newlines
344318 socketcall should wrap recvmmsg and sendmmsg
344337 Fix unhandled syscall: mach:41 (_kernelrpc_mach_port_guard_trap)
-344416 Fix âmake regtest' does not work cleanly on OS X
-344499 Fix compilation for Linux kernel >= 4. With this, also require
- a Linux kernel >= 2.6 as 2.4 is mostly untested and might trigger
- obvious and non-obvious issues
-344512 Fix unhandled syscall: unix:348 (__pthread_chdir) and unhandled
- syscall: unix:349 (__pthread_fchdir) on OS X
+344416 Fix 'make regtest' does not work cleanly on OS X
+344499 Fix compilation for Linux kernel >= 4.0.0
+344512 OS X: unhandled syscall: unix:348 (__pthread_chdir),
+ unix:349 (__pthread_fchdir)
344559 Garbage collection of unused segment names in address space manager
344560 Fix stack traces missing penultimate frame on OS X
344621 Fix memcheck/tests/err_disable4 test on OS X
@@ -283,19 +292,18 @@
347151 Fix suppression for pthread_rwlock_init on OS X 10.8
347233 Fix memcheck/tests/strchr on OS X 10.10 (Haswell)
347322 Power PC regression test cleanup
-347379 valgrind --leak-check=full memleak errors from system libraries on OS X 10.8
+347379 valgrind --leak-check=full leak errors from system libraries on OS X 10.8
== 217236
347389 unhandled syscall: 373 (Linux ARM syncfs)
347686 Patch set to cleanup PPC64 regtests
347978 Remove bash dependencies where not needed
-347982 Fix undefined symbols for architecture x86_64: "_global", referenced from:
- _test_so_global in tls_so-tls_so.o
-347988 Fix Memcheck: the 'impossible' happened: unexpected size for Addr (OSX/wine)
+347982 OS X: undefined symbols for architecture x86_64: "_global" [..]
+347988 Memcheck: the 'impossible' happened: unexpected size for Addr (OSX/wine)
== 345929
348102 Patch updating v4l2 API support
-348247 jno jumps wrongly when overflow is not set
+348247 amd64 front end: jno jumps wrongly when overflow is not set
348269 Improve mmap MAP_HUGETLB support.
-348334 (ppc) valgrind does not simulate dcbfl - then my program terminates
+348334 (ppc) valgrind does not simulate dcbfl - then my program terminates
348345 Assertion fails for negative lineno
348377 Unsupported ARM instruction: yield
348565 Fix detection of command line option availability for clang
@@ -305,10 +313,8 @@
348890 Fix clang warning about unsupported --param inline-unit-growth=900
348949 Bogus "ERROR: --ignore-ranges: suspiciously large range"
349034 Add Lustre ioctls LL_IOC_GROUP_LOCK and LL_IOC_GROUP_UNLOCK
-349086 Fix UNKNOWN task message [id 3406, to mach_task_self(),
- reply 0x........] (task_set_info)
-349087 Fix UNKNOWN task message [id 3410, to mach_task_self(),
- reply 0x........] (task_set_special_port)
+349086 Fix UNKNOWN task message [id 3406, to mach_task_self(), [..]
+349087 Fix UNKNOWN task message [id 3410, to mach_task_self(), [..]
349626 Implemented additional Xen hypercalls
349769 Fix clang/osx: ld: warning: -read_only_relocs cannot be used with x86_64
349790 Clean up of the hardware capability checking utilities.
@@ -316,18 +322,18 @@
349874 Fix typos in source code
349879 memcheck: add handwritten assembly for helperc_LOADV*
349941 di_notify_mmap might create wrong start/size DebugInfoMapping
-350062 vex x86->IR: unhandled instruction bytes: 0x66 0xF 0x3A 0xB (ROUNDSD) on OS X
+350062 vex x86->IR: 0x66 0xF 0x3A 0xB (ROUNDSD) on OS X
350202 Add limited param to 'monitor block_list'
350809 Fix none/tests/async-sigs for Solaris
350811 Remove reference to --db-attach which has been removed.
-350813 Use handwritten memcheck assembly helpers on x86/Solaris in addition to {arm,x86}-linux
+350813 Memcheck/x86: enable handwritten assembly helpers for x86/Solaris too
350854 hard-to-understand code in VG_(load_ELF)()
351140 arm64 syscalls setuid (146) and setresgid (149) not implemented
-351386 Cannot run ld.so.1 under Valgrind
+351386 Solaris: Cannot run ld.so.1 under Valgrind
351474 Fix VG_(iseqsigset) as obvious
351534 Fix incorrect header guard
n-i-bz Provide implementations of certain compiler builtins to support
- compilers who may not provide those
+ compilers that may not provide those
n-i-bz Old STABS code is still being compiled, but never used. Remove it.
n-i-bz Fix compilation on distros with glibc < 2.5
n-i-bz (vex 3098) Avoid generation of Neon insns on non-Neon hosts
@@ -336,6 +342,9 @@
n-i-bz Fix incorrect sizeof expression in syswrap-xen.c reported by Coverity
n-i-bz In VALGRIND_PRINTF write out thread name, if any, to xml
+(3.10.1.BETA?: ?? September 2015, vex r????, valgrind r?????)
+
+
Release 3.10.1 (25 November 2014)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
From: Ivo R. <ivo...@gm...> - 2015-08-27 12:32:57
|
2015-08-27 13:58 GMT+02:00 Julian Seward <js...@ac...>: > > --read-inline-info=yes > > My experience of the inlined-unwind functionality introduced in 3.10.0 has > been positive, and I always use it. I think it's time to enable it by > default. > +1 for this one. It provides huge help. I. |
|
From: Julian S. <js...@ac...> - 2015-08-27 11:58:12
|
> I am thinking a.o. to 2 candidates: > > * Change --leak-check-heuristics=none to --leak-check-heuristics=all > This avoids false possibly lost in c++ code. > No memory or cpu impact (except neglectible cpu needed for heuristic > during leak search, when encountering a possibly leaked block). > > * Change --keep-stacktraces=alloc-then-free to alloc-and-free > This gives more information for writes to freed blocks, showing > also the stacktrace where the block was allocated. > Neglectible cpu impact. Memory impact is one word per client > allocated block. These both sound good to me. The only concern I have is that they might cause a lot of regtests to fail, so we'd have to update the expected output files too. I would also like to propose the following changes: --smc-check=all-non-file So as to give transparent support for JIT generated code. No perf effect on "normal" (file-backed) code. --dsymutil=yes Since you always need to use this on MacOS, else stack traces are missing or wrong. --read-inline-info=yes My experience of the inlined-unwind functionality introduced in 3.10.0 has been positive, and I always use it. I think it's time to enable it by default. J |
|
From: Tom H. <to...@co...> - 2015-08-27 11:53:50
|
On 27/08/15 12:43, Julian Seward wrote: > >>> ==51151== at 0x1004C8C3F: _platform_memchr$VARIANT$Haswell (in >>> /usr/lib/system/libsystem_platform.dylib) > >> This is missing system library suppression for a hardware-specific >> optimisation path. > > No need to suppress. Instead, we need to intercept calls to this function. > Have a look at the "memchr" section in shared/vg_replace_strmem.c. It's a > 1-liner fix. Or 2 lines if you duplicate the comment :) See https://bugs.kde.org/show_bug.cgi?id=351756 where that fix has already been tested and Rhys said he'd commit it. Tom -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: Julian S. <js...@ac...> - 2015-08-27 11:43:12
|
>> ==51151== at 0x1004C8C3F: _platform_memchr$VARIANT$Haswell (in >> /usr/lib/system/libsystem_platform.dylib) > This is missing system library suppression for a hardware-specific > optimisation path. No need to suppress. Instead, we need to intercept calls to this function. Have a look at the "memchr" section in shared/vg_replace_strmem.c. It's a 1-liner fix. Or 2 lines if you duplicate the comment :) J |