Remove all remaining references to pointercheck. It's sad to see it

go, but realistically we can't implement it portably, at least without
considerable performance overhead and some additional complexity.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4956
This commit is contained in:
Julian Seward 2005-10-20 01:37:15 +00:00
parent 4e2059f06a
commit 2aa34e2afe
8 changed files with 2 additions and 44 deletions

View File

@ -885,7 +885,6 @@ static void usage_NORETURN ( Bool debug_help )
" --run-libc-freeres=no|yes free up glibc memory at exit? [yes]\n"
" --simulation-hints=hint1,hint2,... known hints:\n"
" lax-ioctls, enable-outer [none]\n"
" --pointercheck=no|yes enforce client address space limits [yes]\n"
" --show-emwarns=no|yes show warnings about emulation limits? [no]\n"
" --smc-check=none|stack|all checks for self-modifying code: none,\n"
" only for code found in stacks, or all [stack]\n"
@ -1091,7 +1090,6 @@ static Bool process_cmd_line_options( UInt* client_auxv, const char* toolname )
else VG_BOOL_CLO(arg, "--db-attach", VG_(clo_db_attach))
else VG_BOOL_CLO(arg, "--demangle", VG_(clo_demangle))
else VG_BOOL_CLO(arg, "--error-limit", VG_(clo_error_limit))
else VG_BOOL_CLO(arg, "--pointercheck", VG_(clo_pointercheck))
else VG_BOOL_CLO(arg, "--show-emwarns", VG_(clo_show_emwarns))
else VG_NUM_CLO (arg, "--max-stackframe", VG_(clo_max_stackframe))
else VG_BOOL_CLO(arg, "--profile", VG_(clo_profile))
@ -2478,15 +2476,6 @@ Int main(Int argc, HChar **argv, HChar **envp)
VG_(load_suppressions)();
}
//--------------------------------------------------------------
// Setup pointercheck
// p: layout_remaining_space() [for VG_(client_{base,end})]
// p: process_cmd_line_options() [for VG_(clo_pointercheck)]
//--------------------------------------------------------------
//if (VG_(clo_pointercheck))
// VG_(clo_pointercheck) =
// VG_(setup_pointercheck)( VG_(client_base), VG_(client_end));
//--------------------------------------------------------------
// register client stack
//--------------------------------------------------------------

View File

@ -71,7 +71,6 @@ Char* VG_(clo_simulation_hints) = NULL;
Bool VG_(clo_run_libc_freeres) = True;
Bool VG_(clo_track_fds) = False;
Bool VG_(clo_show_below_main)= False;
Bool VG_(clo_pointercheck) = True;
Bool VG_(clo_model_pthreads) = False;
Bool VG_(clo_show_emwarns) = False;
Int VG_(clo_max_stackframe) = 2000000;

View File

@ -999,12 +999,8 @@ static void default_action(const vki_siginfo_t *info, ThreadId tid)
/* General Protection Fault: The CPU/kernel
isn't telling us anything useful, but this
is commonly the result of exceeding a
segment limit, such as the one imposed by
--pointercheck=yes. */
if (VG_(clo_pointercheck))
event = "GPF (Pointer out of bounds?)";
else
event = "General Protection Fault";
segment limit. */
event = "General Protection Fault";
haveaddr = False;
break;
}

View File

@ -135,9 +135,6 @@ extern Bool VG_(clo_track_fds);
extern Bool VG_(clo_run_libc_freeres);
/* Continue stack traces below main()? Default: NO */
extern Bool VG_(clo_show_below_main);
/* Test each client pointer dereference to check it's within the
client address space bounds */
extern Bool VG_(clo_pointercheck);
/* Model the pthread library */
extern Bool VG_(clo_model_pthreads);

View File

@ -484,14 +484,6 @@ this is impossible for whatever reason the alignment can be increased
using this parameter. The supplied value must be between 8 and 4096
inclusive, and must be a power of two.
.TP
.B
--pointercheck=<yes|no> [default: yes]
When enabled, enforces client address space limits. If this option is
disabled, the client program has full and unfettered access to the part
of the address space used internally by \fBvalgrind\fP. This can cause
unexplained crashes and false error reports, so it is best left enabled.
.TP
.B
--run-libc-freeres=<yes|no> [default: yes]

View File

@ -1034,19 +1034,6 @@ Addrcheck), the following options apply.</para>
</itemizedlist>
</listitem>
<listitem id="pointer_check">
<para><computeroutput>--pointercheck=yes</computeroutput> [default]</para>
<para><computeroutput>--pointercheck=no</computeroutput></para>
<para>This option make Valgrind generate a check on every memory
reference to make sure it is within the client's part of the
address space. This prevents stray writes from damaging
Valgrind itself. On x86, this uses the CPU's segmentation
machinery, and has almost no performance cost; there's almost
never a reason to turn it off. On the other architectures this
option is currently ignored as they don't have a cheap way of achieving
the same functionality.</para>
</listitem>
<listitem id="show_emwarns">
<para><computeroutput>--show-emwarns=no</computeroutput> [default]</para>
<para><computeroutput>--show-emwarns=yes</computeroutput></para>

View File

@ -20,7 +20,6 @@ usage: valgrind --tool=<toolname> [options] prog-and-args
--run-libc-freeres=no|yes free up glibc memory at exit? [yes]
--simulation-hints=hint1,hint2,... known hints:
lax-ioctls, enable-outer [none]
--pointercheck=no|yes enforce client address space limits [yes]
--show-emwarns=no|yes show warnings about emulation limits? [no]
--smc-check=none|stack|all checks for self-modifying code: none,
only for code found in stacks, or all [stack]

View File

@ -20,7 +20,6 @@ usage: valgrind --tool=<toolname> [options] prog-and-args
--run-libc-freeres=no|yes free up glibc memory at exit? [yes]
--simulation-hints=hint1,hint2,... known hints:
lax-ioctls, enable-outer [none]
--pointercheck=no|yes enforce client address space limits [yes]
--show-emwarns=no|yes show warnings about emulation limits? [no]
--smc-check=none|stack|all checks for self-modifying code: none,
only for code found in stacks, or all [stack]