|
From: <sv...@va...> - 2016-06-30 20:29:01
|
Author: philippe
Date: Thu Jun 30 21:28:53 2016
New Revision: 15897
Log:
fix 364058 - clarify in manual limitations of array overruns detections
Further try to clarify again with more words the way sgcheck works
and the implied limitations
Modified:
trunk/NEWS
trunk/exp-sgcheck/docs/sg-manual.xml
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Thu Jun 30 21:28:53 2016
@@ -107,6 +107,7 @@
363680 add renameat2() support
363705 arm64 missing syscall name_to_handle_at and open_by_handle_at
363714 ppc64 missing syscalls sync, waitid and name_to/open_by_handle_at
+364058 clarify in manual limitations of array overruns detections
364413 pselect sycallwrapper mishandles NULL sigmask
364728 Power PC, missing support for several HW registrs in
get_otrack_shadow_offset_wrk()
Modified: trunk/exp-sgcheck/docs/sg-manual.xml
==============================================================================
--- trunk/exp-sgcheck/docs/sg-manual.xml (original)
+++ trunk/exp-sgcheck/docs/sg-manual.xml Thu Jun 30 21:28:53 2016
@@ -100,11 +100,19 @@
multiple threads may make multiple simultaneous calls to
(e.g.) <function>memcpy</function> without mutual interference.</para>
+<para>It is important to note that the association is done between
+ a <emphasis>binary instruction</emphasis> and an array, the
+ <emphasis>first time</emphasis> this binary instruction accesses an
+ array during a function call. When the same instruction is executed
+ again during the same function call, then SGCheck might report a
+ problem, if these further executions are not accessing the same
+ array. This technique causes several limitations in SGCheck, see
+ <xref linkend="sg-manual.limitations"/>.
+</para>
</sect1>
-
<sect1 id="sg-manual.cmp-w-memcheck"
xreflabel="Comparison with Memcheck">
<title>Comparison with Memcheck</title>
@@ -146,6 +154,9 @@
function instantiation) is not checked for overrun, since SGCheck
uses that as the "example" of how subsequent accesses should
behave.</para>
+ <para>It also means that errors will not be found in an instruction
+ executed only once (e.g. because this instruction is not in a loop,
+ or the loop is executed only once).</para>
</listitem>
<listitem>
|