1050 Commits

Author SHA1 Message Date
Julian Seward
dffe3a2d1b Add a 3_14_BUGSTATUS.txt file and add to it all bugs reported since 3.14 was release.
At least, the bugs are post-triaged ones, so some have been removed.
2019-03-10 11:11:16 +01:00
Nicholas Nethercote
441bfc5f51 Overhaul DHAT.
This commit thoroughly overhauls DHAT, moving it out of the
"experimental" ghetto. It makes moderate changes to DHAT itself,
including dumping profiling data to a JSON format output file. It also
implements a new data viewer (as a web app, in dhat/dh_view.html).

The main benefits over the old DHAT are as follows.

- The separation of data collection and presentation means you can run a
  program once under DHAT and then sort the data in various ways. Also,
  full data is in the output file, and the viewer chooses what to omit.

- The data can be sorted in more ways than previously. Some of these
  sorts involve useful filters such as "short-lived" and "zero reads or
  zero writes".

- The tree structure view avoids the need to choose stack trace depth.
  This avoids both the problem of not enough depth (when records that
  should be distinct are combined, and may not contain enough
  information to be actionable) and the problem of too much depth (when
  records that should be combined are separated, making them seem less
  important than they really are).

- Byte and block measures are shown with a percentage relative to the
  global count, which helps gauge relative significance of different
  parts of the profile.

- Byte and blocks measures are also shown with an allocation rate
  (bytes and blocks per million instructions), which enables comparisons
  across multiple profiles, even if those profiles represent different
  workloads.

- Both global and per-node measurements are taken at the global heap
  peak ("At t-gmax"), which gives Massif-like insight into the point of
  peak memory use.

- The final/liftimes stats are a bit more useful than the old deaths
  stats. (E.g. the old deaths stats didn't take into account lifetimes
  of unfreed blocks.)

- The handling of realloc() has changed. The sequence `p = malloc(100);
  realloc(p, 200);` now increases the total block count by 2 and the
  total byte count by 300. Previously it increased them by 1 and 200.
  The new handling is a more operational view that better reflects the
  effect of allocations on performance. It makes a significant
  difference in the results, giving paths involving reallocation (e.g.
  repeated pushing to a growing vector) more prominence.

Other things of note:

- There is now testing, both regression tests that run within the
  standard test suite, and viewer-specific tests that cannot run within
  the standard test suite. The latter are run by loading
  dh_view.html?test=1 in a web browser.

- The commit puts all tool lists in Makefiles (and similar files) in the
  following consistent order: memcheck, cachegrind, callgrind, helgrind,
  drd, massif, dhat, lackey, none; exp-sgcheck, exp-bbv.

- A lot of fields in dh_main.c have been given more descriptive names.
  Those names now match those used in dh_view.js.
2019-02-01 14:54:34 +11:00
Philippe Waroquiers
9efc7e80f2 Document the new options --show-error-list and -s 2018-12-28 19:33:06 +01:00
Vadim Barkov
86bd889458 Bug 385411 s390x: Tests and internals for z13 vector FP support
Add test cases for the z13 vector FP support.  Bring s390-opcodes.csv
up-to-date, reflecting that the z13 vector instructions are now supported.
Also remove the non-support disclaimer for the vector facility from
README.s390.

The patch was contributed by Vadim Barkov, with some clean-up and minor
adjustments by Andreas Arnez.
2018-11-30 14:29:39 +01:00
Philippe Waroquiers
66b5a4e9c4 Fix 399301 - Use inlined frames in Massif XTree output.
Author: Nicholas Nethercote <nnethercote@mozilla.com>

Use inlined frames in Massif XTree output.

    This makes Massif's output much easier to follow.

    The commit also removes a -1 used on all Massif stack frame addresses.
    There was a big comment questioning the presence of that -1, and with it
    gone the addresses now match those produced by DHAT.
2018-10-27 20:28:59 +02:00
Philippe Waroquiers
4c80082c36 Prepare for the next 3.15 release
* Create the 3.15 section in the NEWS file
  (the idea is that this section is maintained during the development,
   i.e. document user visible changes and/or the fixed bugs, as part of
   the commit).

* start the fixed bug list with 399322  Improve callgrind_annotate output

* update vg-entities.xml for 3.15 next release.
2018-10-20 11:37:26 +02:00
Julian Seward
3a3000290b --> 3.14.0 final 2018-10-09 13:52:05 +02:00
Julian Seward
7669f536ee --> 3.14.0.RC1 2018-09-30 10:21:27 +02:00
Andreas Arnez
0a1d523a87 s390x: Vector integer and string insn support -- tests
This adds test cases and some internal stuff to the z/Architecture vector
integer and string instruction support.

Contributed by Vadim Barkov <vbrkov@gmail.com>.
2018-09-26 19:31:02 +02:00
Andreas Arnez
1cc1d564f4 s390x: Vector integer and string instruction support
This adds z/Architecture vector integer and string instruction support.

The main author of this patch is Vadim Barkov <vbrkov@gmail.com>.  Some
fixes were provided by Andreas Arnez <arnez@linux.ibm.com>.
2018-09-26 19:30:56 +02:00
Andreas Arnez
f31fb32455 Update bug status for s390x conditional trap insn support
This updates the bug status for git commit 20976f432, "s390x: Implement
conditional trap instructions".
2018-09-24 18:09:51 +02:00
Andreas Arnez
20976f432d s390x: Implement conditional trap instructions
This implements various z/Architecture instructions that conditionally
yield a data exception ("trap").  The condition is either based on a
comparison being true ("compare and trap") or on a loaded value being
zero ("load and trap").  These instructions haven't been widely used in
the past, but may now be emitted by newer compilers.  Note that the
resulting signal for a data exception is SIGFPE, not SIGTRAP.  Thus this
patch also adds a new jump kind Ijk_SigFPE.
2018-09-24 16:06:19 +02:00
Julian Seward
66a462415e Update. 2018-09-18 09:58:11 +02:00
Mark Wielaard
5d41dadeb3 Update vg-entities.xml and valgrind.h for next version number. 2018-09-14 23:12:45 +02:00
Philippe Waroquiers
c007cf5db9 Mention --keep-debuginfo=yes in the FAQ for unloaded shared objects. 2018-09-13 21:12:56 +02:00
Julian Seward
b2cb69bb73 Complete first-pass triage of all reported bugs. 2018-09-04 10:07:58 +02:00
Julian Seward
a8ebc1bb06 Almost catch up with first-pass triaging of bugs. 2018-09-03 20:27:26 +02:00
Rhys Kidd
2b0aa0a5b8 macos: Fix missing syscall ulock_wait (OS X 10.12). bz#379754
Based upon patch available at:
https://bugs.kde.org/attachment.cgi?id=105482
2018-08-19 15:00:45 -04:00
Rhys Kidd
f61cd55a9e macos: Fix valgrind OS-X build: config.h not found (out-of-tree macOS builds). bz#396475
Patch from Rob Boehne.
2018-08-19 14:28:26 -04:00
Julian Seward
e527a93204 Update. 2018-08-06 11:05:31 +02:00
Julian Seward
6ab5152de6 Even more triaging. 2018-07-29 00:06:02 +02:00
Julian Seward
4cbc7f35da Update bug status. 2018-07-27 17:22:43 +02:00
Julian Seward
4a89cd323b Somewhat update bug status. 2018-07-27 16:52:38 +02:00
Julian Seward
e3033e8908 Add 3_13_BUGSTATUS.txt to EXTRA_DIST. 2018-07-25 06:54:59 +02:00
Julian Seward
73e5bed5d1 Reorder bug sections in alphabetical order, for easier navigation. 2018-07-25 06:54:09 +02:00
Julian Seward
cf1561e30e Create 3_13_BUGSTATUS.txt and pull all new bug reports into it. 2018-07-25 06:19:45 +02:00
Ivo Raisr
410d736a99 Ability to add suppressions based on source file name and line number.
Fixes BZ#390471.
Patch based on work by: Jeff Frontz <jeff.frontz@gmail.com> and Joseph M Link.
2018-06-26 06:36:12 +02:00
Philippe Waroquiers
26e21fe911 Point the kcachegrind link to the up to date page
http://kcachegrind.sourceforge.net/cgi-bin/show.cgi/KcacheGrindIndex
page indicates to rather go to
https://kcachegrind.github.io/html/Home.html
so update the doc accordingly.
2018-05-16 23:43:15 +02:00
Ivo Raisr
bd077baa71 Add a simple progress-reporting facility.
Fixes BZ#384633.
Patch by: Julian Seward <jseward@acm.org>
2018-01-20 19:56:02 +00:00
Julian Seward
cceed053ce Bug 79362 - Debug info is lost for .so files when they are dlclose'd. Majorly reworked by Philippe Waroquiers. 2018-01-11 19:40:12 +01:00
Julian Seward
f1a49eeb42 Bug 385408 - s390x: z13 vector "support" instructions not implemented. Patch from Vadim Barkov (vbrkov@gmail.com).
(from bug 385408 comment 0):
Valgrind currently lacks support for the z/Architecture vector "support"
instructions introduced with z13.  These are documented in the
z/Architecture Principles of Operation, Eleventh Edition (March, 2015),
chapter 21: "Vector Overview and Support Instructions".
2018-01-11 18:20:27 +01:00
Ivo Raisr
c46053cc38 Optionally exit on the first error with --exit-on-first-error=<yes|no>.
Fixes BZ#385939.
Slightly modified patch by: Fauchet Gauthier <gauthier.fauchet@free.fr>
2017-11-04 14:31:22 +01:00
Ivo Raisr
6c05c0edf4 Add missing error kinds for Memcheck into XML output protocol 4.
Error kinds have been re-ordered to match MC_ErrorTag.
Patch by: John Davis <jedavis@alumni.cmu.edu>
2017-08-18 13:25:17 +02:00
Philippe Waroquiers
477ef25e67 Small improvement to user manual: capitalise another occurence of memcheck
(yes, I am experimenting with valgrind git repository :)
2017-08-15 23:37:15 +02:00
Philippe Waroquiers
3e35ebc464 Small improvement to user manual: capitalise one occurence of memcheck 2017-08-15 23:06:28 +02:00
Bart Van Assche
59b66f4e38 git-HOWTO.txt: Add to repository 2017-08-14 15:27:45 +02:00
Ivo Raisr
e612b1731f Convert release-HOWTO.txt from SVN to GIT 2017-08-14 15:27:42 +02:00
Ivo Raisr
830d59718a Change Subversion to GIT in various places 2017-08-14 15:27:40 +02:00
Ivo Raisr
63032324b0 Change SVN to GIT in various places and simple scripts. 2017-08-14 15:27:27 +02:00
Philippe Waroquiers
dc0fb705e9 Various minor fixes and correction in user manual and monitor command help
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16466
2017-08-01 20:21:38 +00:00
Julian Seward
fdd319ac66 Update version numbers for 3.13.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16431
2017-06-01 15:44:29 +00:00
Julian Seward
916f862d81 Finalise for 3.13.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16430
2017-06-01 15:28:45 +00:00
Ivo Raisr
75e99530c2 Ignore sim hint "no-nptl-pthread-stackcache"
on Solaris and Mac OS X. Do not produce a warning
message when it is given.
n-i-bz


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16424
2017-05-31 13:47:57 +00:00
Julian Seward
a9707e4c2b Final update before creating the 3_13 branch.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16417
2017-05-24 15:25:27 +00:00
Julian Seward
9deefb5e16 Update doc building notes for Fedora 25.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16416
2017-05-24 15:24:16 +00:00
Julian Seward
d6f47cf0bd Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16413
2017-05-24 13:43:08 +00:00
Julian Seward
dee4156566 Documents --sim-hints=fallback-llsc. Pertains to bug 369459.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16404
2017-05-22 08:29:58 +00:00
Ivo Raisr
b1537b777d More bug squashing! Yay!
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16385
2017-05-16 08:54:31 +00:00
Ivo Raisr
eb42c054c4 Increase Valgrind's load address to prevent mmap failure.
Fixes BZ#374963.

Previously Valgrind failed to start when the executable contained
large text, data or bss segments. The load address was increased
for almost all platforms to 0x58000000 (from 0x38000000),
giving another 512 MB for the executable.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16383
2017-05-16 08:22:51 +00:00
Ivo Raisr
435a4c08ed Fixes for BZ#370028 are now finished.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16382
2017-05-16 08:03:10 +00:00