On Fri, 2010-08-20 at 15:32 -0700, Matthew Hall wrote:
On Fri, Aug 20, 2010 at 05:15:05PM -0500, Martin Holste wrote:
Ah, oops, guess I didn't read too far! Anyway, hopefully my short gdb explanation helps someone else out.
Yes, the problem is definitely in the memtrace functions, as laid out by the valgrind output. There aren't too many calls inside that faulting code block, so it must be a problem as the stack is walked back until backtrace[i] is invalid.
Good to know. Hopefully someone can figure it out so the feature won't be broken when it's really needed someday.
memtrace is a developer's function. I use it rarely and noone except developers would need it. since I rarely use it, it sometimes bitrots and doesn't work. I know this could be better, but it is not enabled by default :)
It looks to me like you wouldn't want memtrace enabled by default as it would be unnecessary overhead, so if you can get it work without, I'd stick with that.
This build was intentionally non-production to be used to gain the detailed familiarity with the code that I always try to have before I begin deploying something widely. I wanted to enable as much tracing and debugging as I could on it so I could learn how it worked.
I have a rule that I never deploy open source code I can't properly understand how to troubleshoot and/or debug if needed. Otherwise I'm flying blind if anything goes wrong. I also believe I have a personal responsibility to properly report problems if I am not capable of fixing them myself.
--enable-debug should be what you are looking for. -- Bazsi