A.6. Changes in Valgrind

Red Hat Developer Toolset 3.1 is distributed with Valgrind 3.10.1, which provides a number of bug fixes over the version included in Red Hat Enterprise Linux and the previous version of Red Hat Developer Toolset. Below is a comprehensive list of new features in this release.

A.6.1. Changes Since Red Hat Developer Toolset 3.0

The following features have been added since the release of Valgrind included in Red Hat Developer Toolset 3.0:
  • The --db-attach option is now deprecated and will be removed in the next feature release. The built-in Valgrind gdbserver capabilities, see the --vgdb options, are superior and should be used instead.
  • Error messages that include stack traces can now show inline function calls if the DWARF debugging information format is available. These can also be used in suppressions.
  • Error messages concerning dubious arguments (for example, to malloc or calloc) now include a stack trace and can be used in suppressions.
  • The C++ demangler has been updated for better C++11 support.
  • The Valgrind gdbserver functionality now supports the display of thread local variables and storage (__thread).
  • Three new monitor commands have been added to Valgrind:
    • v.info location address to show more information about an address.
    • v.info stats to show various Valgrind core and tool statistics.
    • v.set hostvisibility, which allows Valgrind gdbserver to provide access to Valgrind internal host status and memory.
  • A new command line option, --vgdb-stop-at=event1,event2,..., which allows the user to ask the Valgrind gdbserver to stop at the start of program execution, at the end of the program execution, and when Valgrind aborts on internal errors.
  • In the Valgrind memcheck tool, the client code can now selectively disable and re-enable reporting of invalid address errors in specific ranges using new client requests.
  • The Valgrind memcheck tool now supports more accurate checking of system-call parameters that use uninitialized fields in structures.
  • In the Valgrind memcheck tool, it is now possible to disable the mismatched checking of memory deallocation using the free or delete functions by specifying the new --show-mismatched-frees=no|yes flag, with the default value being yes.
  • In the Valgrind helgrind tool, more information about race conditions and locks is now shown in error messages as the new Valgrind gdbserver monitor command returns the list of locks, their location, and their status.