| <?xml version="1.0"?> <!-- -*- sgml -*- --> |
| <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" |
| "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> |
| |
| <chapter id="cc-manual" xreflabel="CoreCheck"> |
| |
| <title>CoreCheck: a very simple error detector</title> |
| |
| <para>CoreCheck is a very simple tool for Valgrind. It adds no |
| instrumentation to the program's code, and only reports the few |
| kinds of errors detected by Valgrind's core. It is mainly of use |
| for Valgrind's developers for debugging and regression |
| testing.</para> |
| |
| <para>The errors detected are those found by the core when |
| <computeroutput>VG_(needs).core_errors</computeroutput> is set. |
| These include:</para> |
| |
| <itemizedlist> |
| |
| <listitem> |
| <para>Pthread API errors (many; eg. unlocking a non-locked |
| mutex)</para> |
| </listitem> |
| |
| <listitem> |
| <para>Silly arguments to <computeroutput>malloc() </computeroutput> et al |
| (eg. negative size)</para> |
| </listitem> |
| |
| <listitem> |
| <para>Invalid file descriptors to blocking syscalls |
| <computeroutput>read()</computeroutput> and |
| <computeroutput>write()</computeroutput></para> |
| </listitem> |
| |
| <listitem> |
| <para>Bad signal numbers passed to |
| <computeroutput>sigaction()</computeroutput></para> |
| </listitem> |
| |
| <listitem> |
| <para>Attempts to install signal handler for |
| <computeroutput>SIGKILL</computeroutput> or |
| <computeroutput>SIGSTOP</computeroutput></para> |
| </listitem> |
| |
| </itemizedlist> |
| |
| </chapter> |