View Issue Details

IDProjectCategoryView StatusLast Update
0001331AIAIpublic2009-08-29 17:14
Reporterbbe Assigned ToKloot  
PrioritynormalSeveritycrashReproducibilitysometimes
Status resolvedResolutionfixed 
Summary0001331: KAIK causes a crash after an indeterminate period of time.
DescriptionStarting a single player game or a multiplayer with KAIK included more often than not causes a crash. It is usually after about 30 minutes. I have recreated this by playing a 10x speed game with the GlobalAI Test script. If I let the bot kill me and watch it for a while it will also crash.

I have had this issue for a period of time, but only know managed to figure out meaningful debug information (see included backtraces).

System Details:

Gentoo Linux:
Portage 2.1.6.7 (default/linux/x86/2008.0, gcc-4.3.3, glibc-2.9_p20081201-r1, 2.6.28-gentoo i686)
CPU: Intel Q660
RAM: 2GB
GFX: Nvidia 9600GT (1GB) - Driver version: 180.27





Additional InformationHere is a simple backtrace (bt full in gdb)

=========================================================

#0 0xb056d130 in CUnitHandler::DecodeOrder ()
   from /usr/games/lib/spring/AI/Bot-libs/libKAIK-0.13.so
No locals.
#1 0xb056e048 in CUnitHandler::IdleUnitUpdate ()
   from /usr/games/lib/spring/AI/Bot-libs/libKAIK-0.13.so
No locals.
#2 0xb05852d4 in CGlobalAI::Update ()
   from /usr/games/lib/spring/AI/Bot-libs/libKAIK-0.13.so
No locals.
0000003 0x085264f0 in CGlobalAIHandler::Update ()
No locals.
0000004 0x08081f08 in CGame::SimFrame ()
No locals.
0000005 0x080964e8 in CGame::ClientReadNet ()
No locals.
#6 0x08099a18 in CGame::Update ()
No locals.
#7 0x084953c2 in SpringApp::Update ()
No locals.
#8 0x0849a6c9 in SpringApp::Run ()
No locals.
#9 0x084cdec4 in Run ()
No locals.
0000010 0x084cdf32 in main ()
No locals.

=========================================================

A longer backtrace of all threads ('thread apply all bt full' in gdb)

=========================================================

Thread 5 (Thread 0xb362ab90 (LWP 16243)):
#0 0xffffe424 in __kernel_vsyscall ()
No symbol table info available.
#1 0xb77243d7 in poll () from /lib/libc.so.6
No symbol table info available.
#2 0xb6530263 in ?? () from /usr/lib/libasound.so.2
No symbol table info available.
0000003 0xb362a2a0 in ?? ()
No symbol table info available.
0000004 0x00000001 in ?? ()
No symbol table info available.
0000005 0xb653d536 in ?? () from /usr/lib/libasound.so.2
No symbol table info available.
#6 0x08a2d728 in ?? ()
No symbol table info available.
#7 0xb659cff4 in ?? () from /usr/lib/libasound.so.2
No symbol table info available.
#8 0xb362a298 in ?? ()
No symbol table info available.
#9 0xb652ac52 in snd_pcm_poll_descriptors_count ()
   from /usr/lib/libasound.so.2
No symbol table info available.
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 3 (Thread 0xb4b57b90 (LWP 16241)):
#0 0xffffe424 in __kernel_vsyscall ()
No symbol table info available.
#1 0xb7b7a396 in nanosleep () from /lib/libpthread.so.0
No symbol table info available.
#2 0xb7bd7641 in SDL_Delay () from /usr/lib/libSDL-1.2.so.0
No symbol table info available.
0000003 0x080d53d8 in CGameServer::UpdateLoop ()
No locals.
0000004 0xb7ad927e in thread_proxy () from /usr/lib/libboost_thread-mt.so
No symbol table info available.
0000005 0xb7b73170 in start_thread () from /lib/libpthread.so.0
No symbol table info available.
#6 0xb772dbce in clone () from /lib/libc.so.6
No symbol table info available.

Thread 2 (Thread 0xb6474b90 (LWP 16240)):
#0 0xffffe424 in __kernel_vsyscall ()
No symbol table info available.
#1 0xb7b7a396 in nanosleep () from /lib/libpthread.so.0
No symbol table info available.
#2 0xb7bd7641 in SDL_Delay () from /usr/lib/libSDL-1.2.so.0
No symbol table info available.
0000003 0xb7bd769c in ?? () from /usr/lib/libSDL-1.2.so.0
No symbol table info available.
0000004 0x00000001 in ?? ()
No symbol table info available.
0000005 0x086e3238 in ?? ()
No symbol table info available.
#6 0xb7bd766a in ?? () from /usr/lib/libSDL-1.2.so.0
No symbol table info available.
#7 0xb7bdfff4 in ?? () from /usr/lib/libSDL-1.2.so.0
No symbol table info available.
#8 0x08782698 in ?? ()
No symbol table info available.
#9 0xb6474348 in ?? ()
No symbol table info available.
0000010 0xb7b9438c in ?? () from /usr/lib/libSDL-1.2.so.0
No symbol table info available.
#11 0x00000000 in ?? ()
No symbol table info available.

Thread 1 (Thread 0xb6475730 (LWP 16239)):
#0 0xb056d130 in CUnitHandler::DecodeOrder ()
   from /usr/games/lib/spring/AI/Bot-libs/libKAIK-0.13.so
No locals.
#1 0xb056e048 in CUnitHandler::IdleUnitUpdate ()
   from /usr/games/lib/spring/AI/Bot-libs/libKAIK-0.13.so
No locals.
#2 0xb05852d4 in CGlobalAI::Update ()
   from /usr/games/lib/spring/AI/Bot-libs/libKAIK-0.13.so
No locals.
0000003 0x085264f0 in CGlobalAIHandler::Update ()
No locals.
0000004 0x08081f08 in CGame::SimFrame ()
No locals.
0000005 0x080964e8 in CGame::ClientReadNet ()
No locals.
#6 0x08099a18 in CGame::Update ()
No locals.
#7 0x084953c2 in SpringApp::Update ()
No locals.
#8 0x0849a6c9 in SpringApp::Run ()
No locals.
#9 0x084cdec4 in Run ()
No locals.
0000010 0x084cdf32 in main ()
No locals.
=========================================================
TagsNo tags attached.
Attached Files
infolog.txt (Attachment missing)

Activities

hoijui

2009-02-21 16:41

reporter   ~0003307

if this problem only occurs on your system, please give info about your system, and get yourself a debug build of spring, and compile with DEBUG3 (if you use under CMake), and debug again.
This way, you get the line numbers in the source files, in the debugger.

If the problem is reproducable, please list describe what we should do to make it appear (eg, mod and map you used to test)

bbe

2009-03-16 23:21

reporter   ~0003335

Just a quick update. I managed to avoid this crash if I comment out line 101 in 'UnitHandler.cpp' of KAIK. I'm not totally sure if that's useful, but I am going to get a proper debug going in the next couple of days.

My crashes were mostly on 'MetalHeck v2' with various versions of BA. I am also compiling this with the latest GCC in Gentoo's testing repository (4.3.x).

Kloot

2009-03-17 00:48

developer   ~0003336

Last edited: 2009-03-17 00:53

bbw: thanks for your continued efforts. I did look into this when you first reported it in my thread (back in november) but didn't get anywhere at the time; catching the crash live would certainly help.

Kloot

2009-03-17 20:28

developer   ~0003338

Found the (probable) cause of this thing a few hours ago. If you could grab a checkout of git master to confirm that it's fixed, I'll buy you a beer. ;)

bbe

2009-03-22 14:19

reporter   ~0003342

Kloot I have managed to check out the git master. I then merged your fix into the 0.78.2.1 branch and it appears to have fixed the crash bug, so thanks very much. Also I noticed your update in the forum thread and have ported those latest changes to my local copy so I can keep sync with other 0.78.2.1 and use KAIK.

Again, cheers for fixing this :)

If you want me to do any other testing just say the word.

Issue History

Date Modified Username Field Change
2009-02-05 23:29 bbe New Issue
2009-02-05 23:29 bbe File Added: infolog.txt
2009-02-21 09:35 hoijui Status new => assigned
2009-02-21 09:35 hoijui Assigned To => hoijui
2009-02-21 16:41 hoijui Note Added: 0003307
2009-02-21 16:41 hoijui Status assigned => feedback
2009-03-16 23:21 bbe Note Added: 0003335
2009-03-17 00:48 Kloot Note Added: 0003336
2009-03-17 00:53 Kloot Note Edited: 0003336
2009-03-17 12:59 hoijui Status feedback => assigned
2009-03-17 12:59 hoijui Assigned To hoijui => Kloot
2009-03-17 20:28 Kloot Note Added: 0003338
2009-03-22 14:19 bbe Note Added: 0003342
2009-08-29 17:14 Kloot Status assigned => resolved
2009-08-29 17:14 Kloot Resolution open => fixed