<div>On 1 March 2012 17:16, Kevin Tew <span dir="ltr">&lt;<a href="mailto:tewk@cs.utah.edu">tewk@cs.utah.edu</a>&gt;</span> wrote:</div><div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    This is the magic incantation I use to use with valgrind.<br>
    <br>
    valgrind --tool=memcheck --db-attach=yes
    --vex-iropt-precise-memory-exns=yes --leak-check=full
    --num-callers=40<br>
    <br></div></blockquote><div><br></div><div>Thanks Kevin, I retried my test with your options, but had the same result (see below). I&#39;m getting this same segfault when trying to run racket as a cgi process under apache, i.e. when one process is &#39;hosting&#39; another, but I don&#39;t know if the issues are related. The 8mb heap usage may be confusing the issue: apache might be starving racket of memory if the cgi process exceeds some limit, but why the segfault in valgrind?</div>

<div><br></div><div><div><div><div>$ valgrind --tool=memcheck --vex-iropt-precise-memory-exns=yes --num-callers=40 ./test.rkt</div><div>==2305== Memcheck, a memory error detector</div><div>==2305== Copyright (C) 2002-2010, and GNU GPL&#39;d, by Julian Seward et al.</div>

<div>==2305== Using Valgrind-3.6.1 and LibVEX; rerun with -h for copyright info</div><div>==2305== Command: ./test.rkt</div><div>==2305== </div><div>==2305== Invalid read of size 8</div><div>==2305==    at 0x5DD34D: scheme_longjmpup (in /home/simon/racket/bin/racket)</div>

<div>==2305==    by 0x4402CD: scheme_handle_stack_overflow (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x478DD0: overflow_equal_hash_key (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x47D63A: equal_hash_key (in /home/simon/racket/bin/racket)</div>

<div>==2305==    by 0x47DB39: scheme_equal_hash_key (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x51147E: make_hash_indices_for_equal (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x479476: get_bucket (in /home/simon/racket/bin/racket)</div>

<div>==2305==    by 0x47AF1E: scheme_lookup_in_table (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x5FB742: scheme_make_prefab_struct_type_raw (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x5FE5F8: scheme_lookup_prefab_type (in /home/simon/racket/bin/racket)</div>

<div>==2305==    by 0x621408: scheme_init_thread_places (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x42DBB4: place_instance_init (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x43029A: scheme_engine_instance_init (in /home/simon/racket/bin/racket)</div>

<div>==2305==    by 0x43040E: scheme_basic_env (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x425458: run_from_cmd_line.clone.1 (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x426578: main_after_stack (in /home/simon/racket/bin/racket)</div>

<div>==2305==    by 0x427070: scheme_main_stack_setup (in /home/simon/racket/bin/racket)</div><div>==2305==    by 0x4265BD: main (in /home/simon/racket/bin/racket)</div><div>==2305==  Address 0x8 is not stack&#39;d, malloc&#39;d or (recently) free&#39;d</div>

<div>==2305== </div><div>SIGSEGV MAPERR si_code 1 fault on addr 0x8</div><div>==2305== </div><div>==2305== HEAP SUMMARY:</div><div>==2305==     in use at exit: 8,554,151 bytes in 1,497 blocks</div><div>==2305==   total heap usage: 1,507 allocs, 10 frees, 8,567,479 bytes allocated</div>

<div>==2305== </div><div>==2305== LEAK SUMMARY:</div><div>==2305==    definitely lost: 16,680 bytes in 4 blocks</div><div>==2305==    indirectly lost: 0 bytes in 0 blocks</div><div>==2305==      possibly lost: 576 bytes in 2 blocks</div>

<div>==2305==    still reachable: 8,536,895 bytes in 1,491 blocks</div><div>==2305==         suppressed: 0 bytes in 0 blocks</div><div>==2305== Rerun with --leak-check=full to see details of leaked memory</div><div>==2305== </div>

<div>==2305== For counts of detected and suppressed errors, rerun with: -v</div><div>==2305== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 2 from 2)</div><div>zsh: killed     valgrind --tool=memcheck --vex-iropt-precise-memory-exns=yes --num-callers=40</div>

</div></div></div></div></div>