Yes, I've seen this happen on my mud in the past and it was driving me
nuts... I believe there was a series of mails in the archives from me w/
a subject of "argument corrupted in transit" or something, where the
argument was fine when it hit void interpret, but once it was sent out
to the command function it got trashed, or something along those
lines... I can't remember the resolution, but it did have to do w/
memory trampling... I'll see if I can find the mail in the archives,
maybe I posted the resolution for it also, I always try to do that for
posterity :D

Richard Lindsey.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Valnir
Sent: Wednesday, April 06, 2005 5:30 AM
To: [email protected]
Subject: Memory issues.

Hey guys.. you all have been really helpful in the past when it comes to

stuff, so here's a good one fore you.

Had my mud crash/reboot last night for an unknown reason. It created a
core, 
so I GDB'd it.

Loaded symbols for /lib/libresolv.so.2
#0  0x486f8e53 in strlen () from /lib/libc.so.6
(gdb) where
#0  0x486f8e53 in strlen () from /lib/libc.so.6
#1  0x486c9435 in vfprintf () from /lib/libc.so.6
#2  0x486e46bc in vsprintf () from /lib/libc.so.6
#3  0x486d176d in sprintf () from /lib/libc.so.6
#4  0x0807127e in do_mstat (ch=0x4956017c, argument=0x487afd24 "8,\023")
at 
act_wiz.c:2143
#5  0x080a3ce1 in do_function (ch=0x4956017c, do_fun=0x8070dbc
<do_mstat>, 
argument=0xbfe3e835 "gorilla")
    at interp.c:885
#6  0x0806fcba in do_stat (ch=0x4956017c, argument=0xbfe3e835 "gorilla")
at 
act_wiz.c:1501
#7  0x080a3c73 in interpret (ch=0x4956017c, argument=0xbfe3e835
"gorilla") 
at interp.c:856
#8  0x0807f3f9 in substitute_alias (d=0x496dd2a4, argument=0x496dd6c1
"stat 
gorilla") at alias.c:98
#9  0x08080a73 in game_loop_unix (control=4) at comm.c:868
#10 0x08080640 in main (argc=4, argv=0xbfe3fa94) at comm.c:477
#11 0x48692d06 in __libc_start_main () from /lib/libc.so.6

ok.. you notice how the argument stays "gorilla" right up to the last 
function where it changes to "8,\203". Now I don't know everything about
GDB 
or about programming, but that looks like the memory address got
overwritten 
somehow. I have NO IDEA how to run GBD against a running process and how
to 
step into it, so help there would be good. Also, this is the first time
I've 
seen this particular error occur, so replicating it (especially if it is
a 
memory corruption) won't be easy, if at all possible.

Lastly, does anyone know of a way to find memory leaks? Our mud monitors

it's own memory usage and does a hot reboot (hotboot) when it reaches
around 
20 MB of ram used. While this helps keep it under control, I don't see a

reason why it should ever creep up that high in the first place. Objs
load 
and unload, mobs, players, etc... I understand that all uses memory, but
I 
think more perms are being allocated than are being released, or
something, 
so any suggestions would be great.

Thanks again for everyone's input!

- Valnir
Legend of the Nobles
http://www.legendofthenobles.com
telnet://play.legendofthenobles.com:5400 


-- 
ROM mailing list
[email protected]
Unsubscribe here ->>> http://www.rom.org/cgi-bin/mailman/listinfo/rom

Reply via email to