|
From: Jeremy F. <je...@go...> - 2005-03-09 17:09:35
|
James Begley wrote:
>== 200 tests, 2 stderr failures, 0 stdout failures =================
>memcheck/tests/scalar (stderr)
>memcheck/tests/scalar_supp (stderr)
>
>
These are expected. FC3's libc/gcc doesn't generate quite as long a
stack trace as is expected by the test.
>However, when I use the new version of massif, I get the following:
>
>====================================================================
>==19751==
>==19751== Stack overflow in thread 0: can't grow stack to 0xE4E4E4F4
>--19751-- INTERNAL ERROR: Valgrind received a signal 11 (SIGSEGV) -
>exiting
>--19751-- si_code=1 Fault EIP: 0xB7D74051; Faulting address: 0xE4E4E4F4
>--19751-- esp=0xB0755F38
>
>
>valgrind: the `impossible' happened:
> Killed by fatal signal
>Basic block ctr is approximately 503255235
>==19751== at 0xB7D74051: calc_exact_ST_dbld2 (ms_main.c:1269)
>
>
It looks like the crash happened when massif is assembling its final
report.
It seems that one of the pointers in the line
xpt_snapshot->xpt->exact_ST_dbld += d_t1_t2 * xpt_snapshot->space
is equal to 0xe4e4e4e4 - a very clearly bogus pointer.
(The "stack overflow" message is meaningless in this context; it failed
to grow the stack to that address, so it decided that it was an overflow.)
Nick?
J
|