Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Johnston2016-08-29 21:25:02 +0000
committerJeff Johnston2016-08-29 21:58:44 +0000
commite695284dd704b8da45459270cf4bcaad9835872b (patch)
tree025a7a501557477fbd7b6faf2c3ef4d059c3a78b
parentefd9322266956569f2b47b0e1ab39a04649e81d1 (diff)
downloadorg.eclipse.linuxtools-e695284dd704b8da45459270cf4bcaad9835872b.tar.gz
org.eclipse.linuxtools-e695284dd704b8da45459270cf4bcaad9835872b.tar.xz
org.eclipse.linuxtools-e695284dd704b8da45459270cf4bcaad9835872b.zip
Bug 383516 - --show-possibly-lost=no missing from memcheck command line
- change default value for --show-possibly-lost to be true - update memcheck documentation regarding this option plus other missing options Change-Id: I1b51e831c399cfdc085fe103575df74943f4d7b5 Reviewed-on: https://git.eclipse.org/r/79973 Tested-by: Hudson CI Reviewed-by: Jeff Johnston <jjohnstn@redhat.com>
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html25
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Installing.html4
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Remote-Valgrind.html4
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html4
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Updating-This-Document.html9
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/User-Guide.html4
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html4
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html4
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html4
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html77
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/MemcheckOptions.pngbin37313 -> 50647 bytes
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/Memcheck_error.pngbin0 -> 55435 bytes
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/Valgrind_toolbar_action.pngbin0 -> 19710 bytes
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/build-helper.xml4
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.doc/toc.xml77
-rw-r--r--valgrind/org.eclipse.linuxtools.valgrind.memcheck/src/org/eclipse/linuxtools/internal/valgrind/memcheck/MemcheckLaunchConstants.java2
16 files changed, 146 insertions, 76 deletions
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html
index c9d2d9f10b..4b80287769 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html
@@ -28,7 +28,7 @@
<td style="width: 60%" align="center"></td>
<td style="width: 20%" align="right" valign="top">Using Memcheck</td>
</tr>
- </table><hr/>
+ </table><hr class="navigation-separator"/>
<h1 id="General_Usage">General Usage</h1>
<p>You can use the Valgrind plug-in's "one-click launch" shortcut to run a default profile. Doing so is similar to running <code>valgrind ./<i>program_name</i></code> from the command line. To use the one-click launch shortcut, right-click on the
<i>project</i> or
@@ -151,6 +151,19 @@
<i>Export</i>
</b> wizard menu.
</p>
+ <h2 id="Error_Markers">Error Markers</h2>
+ <p>The Valgrind Eclipse plug-in uses error markers to identify specific errors, found by the underlying Valgrind tool, to the user. The sub-tools that make use of these markers are Memcheck and Helgrind; each emitting specific memory or concurrency error.</p>
+ <p>
+ <img border="0" src="images/Memcheck_error.png"/>
+ </p>
+ <p>In post 2.1 releases of Linux Tools, it is possible to clear these error markers by simply re-building or cleaning the respective project. For the older versions the
+ <b>
+ <i>Remove Markers</i>
+ </b> toolbar action is available to manually clear the markers.
+ </p>
+ <p>
+ <img border="0" src="images/Valgrind_toolbar_action.png"/>
+ </p>
<h2 id="Other_Operating_Systems">Other Operating Systems</h2>
<p>The Valgrind Eclipse plugins were designed and tested on Linux systems only. However, the Valgrind tools are also available on Mac OS X and so too are the Linux Tools Eclipse Valgrind plugins. The plugins are not officially supported on Mac OS X, but here are instructions to get it working.</p>
<h3 id="Mac_OS_X_10.6">Mac OS X 10.6</h3>
@@ -161,10 +174,10 @@
<p>Essentially, you need to run the following script. (Ensure you have wget installed)</p>
<pre> svn co -r 11104 svn://svn.valgrind.org/valgrind/trunk valgrind
cd valgrind
- wget http://bugs.kde.org/attachment.cgi?id=40091 -O snow-leopard.patch
- wget http://bugsfiles.kde.org/attachment.cgi?id=40900 -O arc4random.patch
- wget http://bugsfiles.kde.org/attachment.cgi?id=42530 -O sidt.patch
- wget http://bugsfiles.kde.org/attachment.cgi?id=42892 -O signal.patch
+ wget <a href="http://bugs.kde.org/attachment.cgi?id=40091">http://bugs.kde.org/attachment.cgi?id=40091</a> -O snow-leopard.patch
+ wget <a href="http://bugsfiles.kde.org/attachment.cgi?id=40900">http://bugsfiles.kde.org/attachment.cgi?id=40900</a> -O arc4random.patch
+ wget <a href="http://bugsfiles.kde.org/attachment.cgi?id=42530">http://bugsfiles.kde.org/attachment.cgi?id=42530</a> -O sidt.patch
+ wget <a href="http://bugsfiles.kde.org/attachment.cgi?id=42892">http://bugsfiles.kde.org/attachment.cgi?id=42892</a> -O signal.patch
patch -p0 &lt; snow-leopard.patch
patch -p0 &lt; arc4random.patch
patch -p1 &lt; signal.patch
@@ -185,7 +198,7 @@
</p>
<p>Use <code>which valgrind</code> to find the install location of the Valgrind binary. </p>
<p><code>ln -s /usr/bin/valgrind /location/of/valgrind</code> will create the symlink.</p>
- <p>After that, the Eclipse Valgrind plugin should work as specified in other parts of this wiki page.</p><hr/>
+ <p>After that, the Eclipse Valgrind plugin should work as specified in other parts of this wiki page.</p><hr class="navigation-separator"/>
<table class="navigation" style="width: 100%;" border="0" summary="navigation">
<tr>
<td style="width: 20%" align="left">
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Installing.html b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Installing.html
index 8a21fa8286..ae4b7ac18b 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Installing.html
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Installing.html
@@ -28,7 +28,7 @@
<td style="width: 60%" align="center"></td>
<td style="width: 20%" align="right" valign="top">General Usage</td>
</tr>
- </table><hr/>
+ </table><hr class="navigation-separator"/>
<h1 id="Installing">Installing</h1>
<p>In order for the Valgrind plug-in for Eclipse to work properly, you should have the
<i>valgrind-3.3.0</i> (or later) package installed on your system first.
@@ -39,7 +39,7 @@
<i>Software Updates and Add-ons</i>
</b> menu. For information on how to use this menu, refer to
<a href="http://wiki.eclipse.org/Linux_Tools_Project/PluginInstallHelp#Installing_Updates_From_the_Linux_Tools_Update_Site">this link</a>.
- </p><hr/>
+ </p><hr class="navigation-separator"/>
<table class="navigation" style="width: 100%;" border="0" summary="navigation">
<tr>
<td style="width: 20%" align="left">
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Remote-Valgrind.html b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Remote-Valgrind.html
index 4df941f607..4196b2ba07 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Remote-Valgrind.html
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Remote-Valgrind.html
@@ -28,7 +28,7 @@
<td style="width: 60%" align="center"></td>
<td style="width: 20%" align="right" valign="top">Special Cases</td>
</tr>
- </table><hr/>
+ </table><hr class="navigation-separator"/>
<h1 id="Remote_Valgrind">Remote Valgrind</h1>
<p>You can profile remote projects just as local ones. This can be useful when developing an application for a different architecture.</p>
<p>To run Valgrind remotely, right-click a remote c/c++ project and navigate to "Profiling Tools", then "Profile Configurations". In the new window, double-click the Profile with Valgrind (remote) profile configuration. </p>
@@ -36,7 +36,7 @@
<p>
<img border="0" src="images/Screenshot-main-remote-valgrind.png"/>
</p>
- <p>After configuring the profile, click the Profile button to launch the profile. Results will be displayed in the same Valgrind view previously described.</p><hr/>
+ <p>After configuring the profile, click the Profile button to launch the profile. Results will be displayed in the same Valgrind view previously described.</p><hr class="navigation-separator"/>
<table class="navigation" style="width: 100%;" border="0" summary="navigation">
<tr>
<td style="width: 20%" align="left">
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html
index 3e4cea4db4..aefe258b7a 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html
@@ -28,7 +28,7 @@
<td style="width: 60%" align="center"></td>
<td style="width: 20%" align="right" valign="top">Updating This Document</td>
</tr>
- </table><hr/>
+ </table><hr class="navigation-separator"/>
<h1 id="Special_Cases">Special Cases</h1>
<h2 id="Encountering_Errors">Encountering Errors</h2>
<p>If the profiled application contains any errors or if any Valgrind options you selected result in an error, these errors will be reported in the
@@ -55,7 +55,7 @@
<p>Massif, on the other hand, will present each process separately and allow you to switch between processes with the <u>Select Process ID</u> dropdown icon (
<img border="0" src="images/Thread.gif"/> ) in the Valgrind view toolbar.
</p>
- <p>Cachegrind will report each PID separately as a top-level element in its output tree.</p><hr/>
+ <p>Cachegrind will report each PID separately as a top-level element in its output tree.</p><hr class="navigation-separator"/>
<table class="navigation" style="width: 100%;" border="0" summary="navigation">
<tr>
<td style="width: 20%" align="left">
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Updating-This-Document.html b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Updating-This-Document.html
index b589b9fc28..9724cb153c 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Updating-This-Document.html
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Updating-This-Document.html
@@ -24,12 +24,11 @@
<td style="width: 60%" align="center"></td>
<td style="width: 20%" align="right" valign="top"></td>
</tr>
- </table><hr/>
+ </table><hr class="navigation-separator"/>
<h1 id="Updating_This_Document">Updating This Document</h1>
- <p> This document is maintained in a collaborative wiki. If you wish to update or modify this document please visit
-
- <a href="http://wiki.eclipse.org/Linux_Tools_Project/Valgrind/User_Guide">http://wiki.eclipse.org/Linux_Tools_Project/Valgrind/User_Guide</a> .
- </p><hr/>
+ <pre> This document is maintained in a collaborative wiki. If you wish to update or modify this document please visit
+ <a href="http://wiki.eclipse.org/Linux_Tools_Project/Valgrind/User_Guide">http://wiki.eclipse.org/Linux_Tools_Project/Valgrind/User_Guide</a> .
+</pre><hr class="navigation-separator"/>
<table class="navigation" style="width: 100%;" border="0" summary="navigation">
<tr>
<td style="width: 20%" align="left">
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/User-Guide.html b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/User-Guide.html
index a0c76b2e84..a3bffc2835 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/User-Guide.html
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/User-Guide.html
@@ -24,7 +24,7 @@
<td style="width: 60%" align="center"></td>
<td style="width: 20%" align="right" valign="top">Installing</td>
</tr>
- </table><hr/>
+ </table><hr class="navigation-separator"/>
<h1 id="Overview">Overview</h1>
<p>
<b>Valgrind</b> is an instrumentation framework for building dynamic analysis tools that can be used to profile applications in detail. Valgrind tools are generally used to automatically detect many memory management and threading problems. The Valgrind suite also includes tools that allow you to build new profiling tools to suit your needs.
@@ -37,7 +37,7 @@
</p>
<p>For more information about Valgrind, refer to
<a href="http://www.valgrind.org/">http://www.valgrind.org/</a>.
- </p><hr/>
+ </p><hr class="navigation-separator"/>
<table class="navigation" style="width: 100%;" border="0" summary="navigation">
<tr>
<td style="width: 20%" align="left"></td>
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html
index 6fde32469d..ecfaf054e3 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html
@@ -28,7 +28,7 @@
<td style="width: 60%" align="center"></td>
<td style="width: 20%" align="right" valign="top">Using Helgrind</td>
</tr>
- </table><hr/>
+ </table><hr class="navigation-separator"/>
<h1 id="Using_Cachegrind">Using Cachegrind</h1>
<p>Cachegrind performs cache and branching profiling. A Cachegrind profile run measures the number of cache misses and branch mispredictions performed by an application. Cachegrind collects the following statistics:</p>
<ul>
@@ -105,7 +105,7 @@
</ul>
</li>
</ul>
- <p>For more information about each Cachegrind option in the Valgrind plug-in for Eclipse, refer to <code>man valgrind</code>.</p><hr/>
+ <p>For more information about each Cachegrind option in the Valgrind plug-in for Eclipse, refer to <code>man valgrind</code>.</p><hr class="navigation-separator"/>
<table class="navigation" style="width: 100%;" border="0" summary="navigation">
<tr>
<td style="width: 20%" align="left">
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html
index 5fe39506d8..108c7d2474 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html
@@ -28,7 +28,7 @@
<td style="width: 60%" align="center"></td>
<td style="width: 20%" align="right" valign="top">Remote Valgrind</td>
</tr>
- </table><hr/>
+ </table><hr class="navigation-separator"/>
<h1 id="Using_Helgrind">Using Helgrind</h1>
<p>Helgrind is a tool that allows you to detect synchronisation errors in C, C++ and Fortran programs that use POSIX pthreads. For more information about Helgrind, refer to
<a href="http://valgrind.org/docs/manual/hg-manual.html">http://valgrind.org/docs/manual/hg-manual.html</a>.
@@ -82,7 +82,7 @@
</b> is a setting which only has an effect with history-level=full. It controls the size of the memory cache used by Helgrind to store previous conflicting accesses. Increasing the value by 1 means increasing Helgrind's memory requirement by 100 bytes.
</li>
</ul>
- <p>For more information about each Helgrind option in the Valgrind plug-in for Eclipse, refer to man valgrind, section "HELGRIND OPTIONS".</p><hr/>
+ <p>For more information about each Helgrind option in the Valgrind plug-in for Eclipse, refer to man valgrind, section "HELGRIND OPTIONS".</p><hr class="navigation-separator"/>
<table class="navigation" style="width: 100%;" border="0" summary="navigation">
<tr>
<td style="width: 20%" align="left">
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html
index a7a1bb2d36..a9725147c6 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html
@@ -28,7 +28,7 @@
<td style="width: 60%" align="center"></td>
<td style="width: 20%" align="right" valign="top">Using Cachegrind</td>
</tr>
- </table><hr/>
+ </table><hr class="navigation-separator"/>
<h1 id="Using_Massif">Using Massif</h1>
<p>Massif is a Valgrind tool that measures how much heap memory an application uses. Heap memory profiling is useful in determining how to reduce the memory usage of an application. For more information about Massif, refer to
<a href="http://www.valgrind.org/docs/manual/ms-manual.html">http://www.valgrind.org/docs/manual/ms-manual.html</a>.
@@ -177,7 +177,7 @@
</b> specifies the minimum alignment (i.e. size) of heap blocks.
</li>
</ul>
- <p>For more information about each Massif option in the Valgrind plug-in for Eclipse, refer to <code>man valgrind</code>.</p><hr/>
+ <p>For more information about each Massif option in the Valgrind plug-in for Eclipse, refer to <code>man valgrind</code>.</p><hr class="navigation-separator"/>
<table class="navigation" style="width: 100%;" border="0" summary="navigation">
<tr>
<td style="width: 20%" align="left">
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html
index 41c4ee8be9..a351059d28 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html
@@ -28,7 +28,7 @@
<td style="width: 60%" align="center"></td>
<td style="width: 20%" align="right" valign="top">Using Massif</td>
</tr>
- </table><hr/>
+ </table><hr class="navigation-separator"/>
<h1 id="Using_Memcheck">Using Memcheck</h1>
<p>Memcheck is the default tool used by Valgrind and the Valgrind plug-in for Eclipse. It allows you to detect memory-related problems such as memory leaks, use of uninitialized memory, and reads from/writes to inappropriate stack areas. For more information about Memcheck, refer to
<a href="http://www.valgrind.org/docs/manual/mc-manual.html">http://www.valgrind.org/docs/manual/mc-manual.html</a>.
@@ -62,15 +62,28 @@
<ul>
<li>
<b>
+ <i>check for memory leaks</i>
+ </b> corresponds to the Memcheck command-line option <code>--leak-check=</code> option with only the values "yes" or "no" supported. When enabled, Memcheck will search for memory leaks when the client program finishes and will show each individual leak based on the settings of
+ <b>
+ <i>show reachable blocks</i>
+ </b> and
+ <b>
+ <i>show possibly lost blocks</i>
+ </b>.
+ </li>
+ </ul>
+ <ul>
+ <li>
+ <b>
<i>leak resolution</i>
- </b> sets how tolerant Memcheck should be in considering different stack traces to be the same. The default setting is "low", which means only the first two entries need to match. The "med" setting requires four entries to declare a match. The "high" setting requires all entries to declare match.
+ </b> corresponds to the Memcheck command-line option <code>--leak-resolution=</code> and sets how tolerant Memcheck should be in considering different stack traces to be the same. The default setting is "low", which means only the first two entries need to match. The "med" setting requires four entries to declare a match. The "high" setting requires all entries to declare match.
</li>
</ul>
<ul>
<li>
<b>
<i>freelist size (blocks)</i>
- </b> is identical to the Memcheck command-line option <code>--freelist-vol=</code>, which specifies the maximum total size (in bytes) of memory blocks to be marked "inaccessible" once they have been freed using <code>free</code> (as in C) or <code>delete</code> (as in C++). The default value for
+ </b> corresponds to the Memcheck command-line option <code>--freelist-vol=</code>, which specifies the maximum total size (in bytes) of memory blocks to be marked "inaccessible" once they have been freed using <code>free</code> (as in C) or <code>delete</code> (as in C++). The default value for
<b>
<i>freelist size (blocks)</i>
</b> is 10000000.
@@ -80,42 +93,86 @@
<li>
<b>
<i>minimum heap block alignment</i>
- </b> is identical to the Memcheck command-line option <code>--alignment=</code>, which specifies the minimum alignment/size of heap blocks. The default value for this option is 8.
+ </b> corresponds to the Memcheck command-line option <code>--alignment=</code>, which specifies the minimum alignment/size of heap blocks. The default value for this option is 8.
</li>
</ul>
<ul>
<li>
<b>
<i>show reachable blocks</i>
- </b> configures whether or not Memcheck should report blocks it could not find a pointer to during leak detection. This is disabled by default (i.e. do not report blocks with undetermined pointers).
+ </b> corresponds to the Memcheck command-line option <code>--show-reachable</code> and configures whether or not Memcheck should report all types of leaks (option true) or only show definitely lost / possibly lost blocks (option false) based on the value of
+ <b>
+ <i>show possibly lost blocks</i>
+ </b>. The default value of this option is false.
+ </li>
+ </ul>
+ <ul>
+ <li>
+ <b>
+ <i>show possibly lost blocks</i>
+ </b> corresponds to the Memcheck command-line option <code>--show-possibly-lost</code> and configures whether Memcheck should report 'possibly lost blocks' in addition to 'definitely lost blocks' if
+ <b>
+ <i>show reachable blocks</i>
+ </b> is set to false. If
+ <b>
+ <i>show reachable blocks</i>
+ </b> is true, then this setting is ignored as all leak block types are reported. The default value of this option is true.
</li>
</ul>
<ul>
<li>
<b>
<i>undef value errors</i>
- </b> configures whether or not Memcheck should detect dangerous uses of undefined value errors. This is enabled by default.
+ </b> corresponds to the Memcheck command-line option <code>--undef-value-errors</code> and specifies whether or not Memcheck should detect dangerous uses of undefined value errors. This is enabled by default.
+ </li>
+ </ul>
+ <ul>
+ <li>
+ <b>
+ <i>track origins</i>
+ </b> corresponds to the Memcheck command-line option <code>--track-origins=</code> which specifies whether Memcheck tracks the origin of uninitialized values or not. By default, Memcheck does not track uninitialized values.
</li>
</ul>
<ul>
<li>
<b>
<i>allow partial loads</i>
- </b> is identical to the Memcheck command-line option <code>--partial-loads-ok=</code>, which controls how Memcheck handles word-sized, word-aligned loads from addresses from which bytes are addressable and others are not. This is disabled by default (i.e. treat loads from partially invalid and completely invalid addresses as the same).
+ </b> corresponds to the Memcheck command-line option <code>--partial-loads-ok=</code>, which controls how Memcheck handles word-sized, word-aligned loads from addresses from which bytes are addressable and others are not. This is disabled by default (i.e. treat loads from partially invalid and completely invalid addresses as the same).
</li>
</ul>
<ul>
<li>
<b>
<i>gcc 2.96 workarounds</i>
- </b> is identical to the Memcheck command-line option <code>--workaround-gcc296-bugs</code>, which controls whether Memcheck should assume that small reads/writes below the stack pointer are due to bugs in
+ </b> corresponds to the Memcheck command-line option <code>--workaround-gcc296-bugs</code>, which controls whether Memcheck should assume that small reads/writes below the stack pointer are due to bugs in
<i>gcc-2.96</i>. This option is disabled by default (i.e. do not assume them to be reslting from
- <i>gcc-2.96</i> bugs; report such reads/writes as errors).
+ <i>gcc-2.96</i> bugs; report such reads/writes as errors).
+ </li>
+ </ul>
+ <ul>
+ <li>
+ <b>
+ <i>fill free'd areas</i>
+ </b> corresponds to the Memcheck command-line option <code>--freefill=</code>. A hex byte is specified that is used by Memcheck to fill blocks freed by free, delete. This can be used to determine obscure memory corruption problems.
+ </li>
+ </ul>
+ <ul>
+ <li>
+ <b>
+ <i>fill malloc'd areas</i>
+ </b> corresponds to the Memcheck command-line option <code>--mallocfill=</code>. A hex byte is specified that is used by Memcheck to fill blocks allocated by malloc, new, etc, but not by calloc. This can be used to determine obscure memory corruption problems.
+ </li>
+ </ul>
+ <ul>
+ <li>
+ <b>
+ <i>ignore ranges</i>
+ </b> corresponds to the Memcheck command-line option <code>--ignore-ranges=</code>. Any ranges listed in this option will be ignored by Memcheck's addressability checking.
</li>
</ul>
<p>Refer to
<a href="http://www.valgrind.org/docs/manual/mc-manual.html#mc-manual.suppfiles">http://www.valgrind.org/docs/manual/mc-manual.html#mc-manual.suppfiles</a> for information about Memcheck suppression files. For more information about each Memcheck option in the Valgrind plug-in for Eclipse, refer to <code>man valgrind</code>.
- </p><hr/>
+ </p><hr class="navigation-separator"/>
<table class="navigation" style="width: 100%;" border="0" summary="navigation">
<tr>
<td style="width: 20%" align="left">
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/MemcheckOptions.png b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/MemcheckOptions.png
index 4a834967bb..45e2d4214f 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/MemcheckOptions.png
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/MemcheckOptions.png
Binary files differ
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/Memcheck_error.png b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/Memcheck_error.png
new file mode 100644
index 0000000000..fa3c309dcb
--- /dev/null
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/Memcheck_error.png
Binary files differ
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/Valgrind_toolbar_action.png b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/Valgrind_toolbar_action.png
new file mode 100644
index 0000000000..20d0efcf6e
--- /dev/null
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/Linux_Tools_Project/Valgrind/User_Guide/images/Valgrind_toolbar_action.png
Binary files differ
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/build-helper.xml b/valgrind/org.eclipse.linuxtools.valgrind.doc/build-helper.xml
index e1650e595c..63fc91e522 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/build-helper.xml
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/build-helper.xml
@@ -8,13 +8,13 @@
<path id="wikitext.tasks.classpath">
<!-- Replace dir with the dir you have wikitext installed into.-->
- <fileset dir="/usr/share/eclipse/dropins/mylyn/eclipse/plugins">
+ <fileset dir="/usr/share/eclipse/droplets/mylyn-docs/eclipse/plugins">
<include name="org.eclipse.mylyn.wikitext.*core*.jar" />
</fileset>
</path>
- <taskdef classpathref="wikitext.tasks.classpath" resource="org/eclipse/mylyn/wikitext/core/util/anttask/tasks.properties" />
<taskdef classpathref="wikitext.tasks.classpath" resource="org/eclipse/mylyn/internal/wikitext/mediawiki/core/tasks/tasks.properties" />
+ <taskdef classpathref="wikitext.tasks.classpath" resource="org/eclipse/mylyn/wikitext/core/util/anttask/tasks.properties" />
<target name="all" description="Generate Eclipse help content for the Linux Tools Valgrind user guide">
<mediawiki-to-eclipse-help wikiBaseUrl="${help.doc.url.base}" title="Valgrind User Guide" formatoutput="true" dest="." templateExcludes="*eclipseproject*, Infobox">
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.doc/toc.xml b/valgrind/org.eclipse.linuxtools.valgrind.doc/toc.xml
index 2bd170f7c0..0da6bc37f8 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.doc/toc.xml
+++ b/valgrind/org.eclipse.linuxtools.valgrind.doc/toc.xml
@@ -1,41 +1,42 @@
<?xml version='1.0' encoding='utf-8' ?>
<toc topic="Linux_Tools_Project/Valgrind/User_Guide/User-Guide.html" label="Valgrind User Guide">
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/User-Guide.html" label="Valgrind User Guide">
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/User-Guide.html" label="Overview"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Installing.html" label="Installing"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html" label="General Usage">
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Configuring_a_Profile_Run" label="Configuring a Profile Run">
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#General_Options" label="General Options"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Suppressions" label="Suppressions"></topic>
- </topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Exporting_Valgrind_Data" label="Exporting Valgrind Data"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Other_Operating_Systems" label="Other Operating Systems">
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Mac_OS_X_10.6" label="Mac OS X 10.6"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#x86_64_Mac_OS" label="x86_64 Mac OS"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#All_Mac_OS" label="All Mac OS"></topic>
- </topic>
- </topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html" label="Using Memcheck">
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html#Analyzing_Memcheck_Profile_Results" label="Analyzing Memcheck Profile Results"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html#Configuring_a_Memcheck_Profile_Run" label="Configuring a Memcheck Profile Run"></topic>
- </topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html" label="Using Massif">
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html#Analyzing_Massif_Profile_Results" label="Analyzing Massif Profile Results"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html#Configuring_a_Massif_Profile_Run" label="Configuring a Massif Profile Run"></topic>
- </topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html" label="Using Cachegrind">
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html#Analyzing_Cachegrind_Profile_Results" label="Analyzing Cachegrind Profile Results"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html#Configuring_a_Cachegrind_Profile_Run" label="Configuring a Cachegrind Profile Run"></topic>
- </topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html" label="Using Helgrind">
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html#Analyzing_Helgrind_Profile_Results" label="Analyzing Helgrind Profile Results"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html#Configuring_a_Helgrind_Profile_Run" label="Configuring a Helgrind Profile Run"></topic>
- </topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Remote-Valgrind.html" label="Remote Valgrind"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html" label="Special Cases">
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html#Encountering_Errors" label="Encountering Errors"></topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html#Profiling_Child_Processes" label="Profiling Child Processes"></topic>
- </topic>
- <topic href="Linux_Tools_Project/Valgrind/User_Guide/Updating-This-Document.html" label="Updating This Document"></topic>
- </topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/User-Guide.html" label="Valgrind User Guide">
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/User-Guide.html" label="Overview"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Installing.html" label="Installing"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html" label="General Usage">
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Configuring_a_Profile_Run" label="Configuring a Profile Run">
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#General_Options" label="General Options"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Suppressions" label="Suppressions"></topic>
+ </topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Exporting_Valgrind_Data" label="Exporting Valgrind Data"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Error_Markers" label="Error Markers"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Other_Operating_Systems" label="Other Operating Systems">
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#Mac_OS_X_10.6" label="Mac OS X 10.6"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#x86_64_Mac_OS" label="x86_64 Mac OS"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/General-Usage.html#All_Mac_OS" label="All Mac OS"></topic>
+ </topic>
+ </topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html" label="Using Memcheck">
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html#Analyzing_Memcheck_Profile_Results" label="Analyzing Memcheck Profile Results"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Memcheck.html#Configuring_a_Memcheck_Profile_Run" label="Configuring a Memcheck Profile Run"></topic>
+ </topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html" label="Using Massif">
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html#Analyzing_Massif_Profile_Results" label="Analyzing Massif Profile Results"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Massif.html#Configuring_a_Massif_Profile_Run" label="Configuring a Massif Profile Run"></topic>
+ </topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html" label="Using Cachegrind">
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html#Analyzing_Cachegrind_Profile_Results" label="Analyzing Cachegrind Profile Results"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Cachegrind.html#Configuring_a_Cachegrind_Profile_Run" label="Configuring a Cachegrind Profile Run"></topic>
+ </topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html" label="Using Helgrind">
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html#Analyzing_Helgrind_Profile_Results" label="Analyzing Helgrind Profile Results"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Using-Helgrind.html#Configuring_a_Helgrind_Profile_Run" label="Configuring a Helgrind Profile Run"></topic>
+ </topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Remote-Valgrind.html" label="Remote Valgrind"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html" label="Special Cases">
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html#Encountering_Errors" label="Encountering Errors"></topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Special-Cases.html#Profiling_Child_Processes" label="Profiling Child Processes"></topic>
+ </topic>
+ <topic href="Linux_Tools_Project/Valgrind/User_Guide/Updating-This-Document.html" label="Updating This Document"></topic>
+ </topic>
</toc> \ No newline at end of file
diff --git a/valgrind/org.eclipse.linuxtools.valgrind.memcheck/src/org/eclipse/linuxtools/internal/valgrind/memcheck/MemcheckLaunchConstants.java b/valgrind/org.eclipse.linuxtools.valgrind.memcheck/src/org/eclipse/linuxtools/internal/valgrind/memcheck/MemcheckLaunchConstants.java
index bd5e02dc95..c78703683c 100644
--- a/valgrind/org.eclipse.linuxtools.valgrind.memcheck/src/org/eclipse/linuxtools/internal/valgrind/memcheck/MemcheckLaunchConstants.java
+++ b/valgrind/org.eclipse.linuxtools.valgrind.memcheck/src/org/eclipse/linuxtools/internal/valgrind/memcheck/MemcheckLaunchConstants.java
@@ -59,5 +59,5 @@ public final class MemcheckLaunchConstants {
public static final boolean DEFAULT_MEMCHECK_TRACKORIGINS = false;
// VG >= 3.6.0
- public static final boolean DEFAULT_MEMCHECK_POSSIBLY_LOST_BOOL = false;
+ public static final boolean DEFAULT_MEMCHECK_POSSIBLY_LOST_BOOL = true;
}

Back to the top