Memory Overruns and other problems

From: Chris Jacobson (fear@ATHENET.NET)
Date: 12/06/97


There is some serios stuff ahead... this is not for the faint of heart.

My memory problems continue, yet on rare occassions.  I cannot find the
overrun errors, or underrun, whichever it is (more likely overrun).  I
continue to get them, unreproduceably, and without a trace of whats
happening/happened.

I also still get (also on rare occasions), problems with freeing memory,
although this has not happened in the last 24 hours.  I have a special
function, "my_free" which sets two global variables - a char * and an int
- to the func name and line # of the caller.  This is simply using my
FREE(a) macro that I replaced free() with in most of my code, which calls
my_free(a, __FUNCTION__, __LINE__);
However, what is odd is when it crashes, last_func (which points to the
name of hte last my_free caller) is pointing to a valid addr, which is a
NULL string.  Also, last_line, which is set tot he line of the last
my_free caller, is 0.  This is extremely confusing - it shouldn't be
happening as far as I know.

So waht I need is a memor debugging tool, or advice, that will help.  I
have tried dbmalloc, but its too slow.  Electric Fence was also too slow,
and brought my memory usage up past 100 megs (normally under 10).  If
there is a commercial memory debugger that could help, I will even look
into that.

- Chris Jacobson


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/08/00 PST