Login
User Name:

Password:



Register
Forgot your password?
Vote for Us!
parse description bug
Dec 15, 2017, 10:08 pm
By Remcon
Couple bugs
Dec 12, 2017, 5:42 pm
By Remcon
Bug in disarm( )
Nov 12, 2017, 6:54 pm
By GatewaySysop
Bug in will_fall( )
Oct 23, 2017, 1:35 am
By GatewaySysop
Bug in do_zap( ), do_brandish( )
Oct 18, 2017, 1:52 pm
By GatewaySysop
LOP 1.45
Author: Remcon
Submitted by: Remcon
LOP Heroes Edition
Author: Vladaar
Submitted by: Vladaar
Heroes sound extras
Author: Vladaar
Submitted by: Vladaar
6Dragons 4.3
Author: Vladaar
Submitted by: Vladaar
Memwatch
Author: Johan Lindh
Submitted by: Vladaar
Users Online
CommonCrawl, Yahoo!, Bing

Members: 0
Guests: 15
Stats
Files
Topics
Posts
Members
Newest Member
477
3,706
19,240
608
LAntorcha
Today's Birthdays
There are no member birthdays today.
Related Links
» SmaugMuds.org » Codebases » AFKMud Support & Development » AFKmud freezes with IMC
Forum Rules | Mark all | Recent Posts

AFKmud freezes with IMC
< Newer Topic :: Older Topic >

Pages:<< prev 1 next >>
Post is unread #1 Jan 5, 2007, 6:59 am
Go to the top of the page
Go to the bottom of the page

N_Yo_FACE

GroupMembers
Posts15
JoinedJan 8, 2003

I tried connecting to IMC, and after entering the next command (any command) immidiately after connecting (connection appears to be successful), I get the following:

Fri Jan 5, 2007 6:53:52 AM PST :: [*****] BUG: &RALARM CLOCK! In section game_loop
Fri Jan 5, 2007 6:53:52 AM PST :: Obtained 10 stack frames.
Fri Jan 5, 2007 6:53:52 AM PST :: ../src/afkmud(_Z3bugPKcz+0x220) [0x5a93f8]
Fri Jan 5, 2007 6:53:52 AM PST :: ../src/afkmud [0x5947d0]
Fri Jan 5, 2007 6:53:52 AM PST :: /lib64/tls/libc.so.6 [0x2aaaab3be4c0]
Fri Jan 5, 2007 6:53:52 AM PST :: /lib64/tls/libc.so.6(recv+0x45) [0x2aaaab44d5f5]
Fri Jan 5, 2007 6:53:52 AM PST :: ../src/afkmud(_Z15imc_read_socketv+0x5b) [0x48bec1]
Fri Jan 5, 2007 6:53:52 AM PST :: ../src/afkmud(_Z8imc_loopv+0x2c9) [0x4b52e1]
Fri Jan 5, 2007 6:53:52 AM PST :: ../src/afkmud(_Z9game_loopv+0x6a) [0x593be8]
Fri Jan 5, 2007 6:53:52 AM PST :: ../src/afkmud(main+0x24b) [0x594763]
Fri Jan 5, 2007 6:53:52 AM PST :: /lib64/tls/libc.so.6(__libc_start_main+0xda) [0x2aaaab3ac5aa]
Fri Jan 5, 2007 6:53:52 AM PST :: ../src/afkmud(__gxx_personality_v0+0xfa) [0x4848ea]
Fri Jan 5, 2007 6:53:52 AM PST :: &RPossible infinite loop detected during game operation. Restarting game_loop().

Something to do with the 64 bit architecture, perhaps? I'm going to try compiling on a 32 bit box I have as well and see how that goes...
       
Post is unread #2 Jan 5, 2007, 7:23 am
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,639
JoinedJan 1, 2002

Hmm. It's too bad the backtrace code can't be more informative, although it does help to know it's having issues in imc_read_socket. There's not a huge amount of code there to look through. And I know it doesn't help to say that it works for me, but, well, it does. But I'm also still using 32bit systems to run the code from. Alsherok uses the exact same IMC2 client code as the public distro.

One thing I can suggest is instead of running normally, try running under either gdb or valgrind so that when it does get stuck and freeze you can interrupt it and get a better idea of which statement it actually froze on.
       
Post is unread #3 Jan 5, 2007, 7:54 am
Go to the top of the page
Go to the bottom of the page

N_Yo_FACE

GroupMembers
Posts15
JoinedJan 8, 2003

I just tried running it under a 32 bit system. Suse version 10.0, if that's any help. Gave me the following:

Fri Jan 5, 2007 7:29:50 AM PST :: [*****] BUG: &RALARM CLOCK! In section game_loop
Fri Jan 5, 2007 7:29:50 AM PST :: Obtained 11 stack frames.
Fri Jan 5, 2007 7:29:50 AM PST :: ./afkmud(_Z3bugPKcz+0x150) [0x81dbf1a]
Fri Jan 5, 2007 7:29:50 AM PST :: ./afkmud [0x81c6eed]
Fri Jan 5, 2007 7:29:50 AM PST :: [0xffffe420]
Fri Jan 5, 2007 7:29:50 AM PST :: [0xffffe410]
Fri Jan 5, 2007 7:29:50 AM PST :: /lib/tls/libc.so.6(recv+0x21) [0x4025f221]
Fri Jan 5, 2007 7:29:50 AM PST :: ./afkmud(_Z15imc_read_socketv+0x4f) [0x80beba1]
Fri Jan 5, 2007 7:29:50 AM PST :: ./afkmud(_Z8imc_loopv+0x23f) [0x80ebf37]
Fri Jan 5, 2007 7:29:50 AM PST :: ./afkmud(_Z9game_loopv+0x70) [0x81c63a0]
Fri Jan 5, 2007 7:29:50 AM PST :: ./afkmud(main+0x26a) [0x81c6e86]
Fri Jan 5, 2007 7:29:50 AM PST :: /lib/tls/libc.so.6(__libc_start_main+0xd0) [0x401b4ea0]
Fri Jan 5, 2007 7:29:50 AM PST :: ./afkmud(__gxx_personality_v0+0xf9) [0x80bbfa1]
Fri Jan 5, 2007 7:29:50 AM PST :: &RPossible infinite loop detected during game operation. Restarting game_loop().

As for your suggestion regarding gdb, decided to try it and (after a little web sleuthing as to *how* to accomplish that task), discovered the following:

Program received signal SIGINT, Interrupt.
0xffffe410 in __kernel_vsyscall ()
(gdb) backtrace
#0 0xffffe410 in __kernel_vsyscall ()
#1 0x4025f221 in recv () from /lib/tls/libc.so.6
#2 0x080beba1 in imc_read_socket () at imc.cpp:2730
#3 0x080ebf37 in imc_loop () at imc.cpp:2826
#4 0x081c63a0 in game_loop () at comm.cpp:940
#5 0x081c6fb8 in caught_alarm (signum=14) at comm.cpp:641
#6 <signal handler called>
#7 0xffffe410 in __kernel_vsyscall ()
#8 0x4025f221 in recv () from /lib/tls/libc.so.6
#9 0x080beba1 in imc_read_socket () at imc.cpp:2730
#10 0x080ebf37 in imc_loop () at imc.cpp:2826
#11 0x081c63a0 in game_loop () at comm.cpp:940
#12 0x081c6e86 in main (argc=1, argv=0xbfaa91c4) at comm.cpp:1346
(gdb) frame 2
#2 0x080beba1 in imc_read_socket () at imc.cpp:2730
2730 nRead = recv( this_imcmud->desc, this_imcmud->inbuf + iStart, sizeof( this_imcmud->inbuf ) - 10 - iStart, 0 );
(gdb) next
Single stepping until exit from function __kernel_vsyscall,
which has no line number information.
0x4025f221 in recv () from /lib/tls/libc.so.6
(gdb) next
Single stepping until exit from function recv,
which has no line number information.
imc_read_socket () at imc.cpp:2731
2731 iErr = errno;
(gdb) next
2732 if( nRead > 0 )
(gdb) next
2742 else if( nRead == 0 && this_imcmud->state == IMC_ONLINE )
(gdb) next
2750 else if( iErr == EAGAIN )
(gdb) next
2752 else if( nRead == -1 )
(gdb) next
2730 nRead = recv( this_imcmud->desc, this_imcmud->inbuf + iStart, sizeof( this_imcmud->inbuf ) - 10 - iStart, 0 );

Hopefully that helps.
       
Post is unread #4 Jan 5, 2007, 7:38 pm
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,639
JoinedJan 1, 2002

Maybe it does have something to do with 64 bit systems. When you run this next, can you "print nRead" when you interrupt it again and list the result of that? It may help to figure out what the problem is.
       
Post is unread #5 Jan 5, 2007, 9:53 pm
Go to the top of the page
Go to the bottom of the page

N_Yo_FACE

GroupMembers
Posts15
JoinedJan 8, 2003

Well, here's the result of print nRead:

(gdb) frame 1
#1 0x000000000048bec1 in imc_read_socket () at imc.cpp:2730
2730 nRead = recv( this_imcmud->desc, this_imcmud->inbuf + iStart, sizeof( this_imcmud->inbuf ) - 10 - iStart, 0 );
(gdb) print nRead
$1 = 0

I also decided to check the following if this helps:

2742 else if( nRead == 0 && this_imcmud->state == IMC_ONLINE )
(gdb) print nRead
$5 = 0
(gdb) print this_imcmud->state
$6 = 2
(gdb) next
2750 else if( iErr == EAGAIN )
(gdb) print iErr
$7 = 42

I can't help but wonder if maybe 42 is the answer... LoL
       
Post is unread #6 Jan 7, 2007, 2:11 pm
Go to the top of the page
Go to the bottom of the page

N_Yo_FACE

GroupMembers
Posts15
JoinedJan 8, 2003

Well, now I'm confused. I installed an IMC server on my 32-bit box, then tested linking my MUD to it. Linked up just fine, from what I can tell. Said it was connected, and didn't freeze or anything. Maybe it's time to break out Ethereal and see what's going on with packets... :cry:
       
Post is unread #7 Jan 8, 2007, 6:13 am
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,639
JoinedJan 1, 2002

Are you trying to connect to a specific IMC2 server? Maybe something is wrong with the route between your mud and the server. The connection might freeze up if the socket blocked, or if you've got a firewall in the way preventing the connection from leaving your network.

Is your mud on the same local network as the 32bit box you installed the server on?
       
Post is unread #8 Jan 8, 2007, 8:40 am
Go to the top of the page
Go to the bottom of the page

N_Yo_FACE

GroupMembers
Posts15
JoinedJan 8, 2003

I'm trying to connect to server02.intermud.us. I'm wondering if maybe it's a bad password or something on my end. I successfully connected with an older version on this box, but that was like a year or so ago.
       
Post is unread #9 Jan 8, 2007, 11:16 am
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,639
JoinedJan 1, 2002

Could you tell me what mud name you're trying to connect with? I can check the logs to see what the problem might be.
       
Post is unread #10 Jan 8, 2007, 12:08 pm
Go to the top of the page
Go to the bottom of the page

N_Yo_FACE

GroupMembers
Posts15
JoinedJan 8, 2003

Mud name is: NYFnet
       
Post is unread #11 Jan 8, 2007, 8:21 pm
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,639
JoinedJan 1, 2002

Interesting, I checked the logs and it was rejecting due to MD5 password failure. Problem is, AFKMud 2.0 doesn't use MD5 for IMC2. So I'm not sure how it arrived at that point. But you should be able to try connecting now.
       
Pages:<< prev 1 next >>