2025-07-21 03:57 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0002493Spring engineGeneralpublic2011-06-27 12:29
Reporterabma 
Assigned Tozerver 
PrioritynormalSeverityminorReproducibilitysometimes
StatusresolvedResolutionfixed 
Product Version 
Target VersionFixed in Version0.82.7+git 
Summary0002493: (master) deadlock/endless loop on start
Description(gdb) bt full
#0 pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
No locals.
#1 0x00007f912e509070 in boost::thread::join() () from /usr/lib/libboost_thread.so.1.42.0
No symbol table info available.
#2 0x0000000000924e42 in Watchdog::Uninstall ()
    at /home/abma/dev/spring/master/rts/System/Platform/Watchdog.cpp:284
        lock = {m = 0x1021ac0, is_locked = true}
0000003 0x000000000092cdab in SpringApp::Run (this=0x7ffff5ce1510, argc=1, argv=0x7ffff5ce1848)
    at /home/abma/dev/spring/master/rts/System/SpringApp.cpp:1165
No locals.
0000004 0x000000000090d9a7 in MainFunc (argc=1, argv=0x7ffff5ce1848, ret=0x7ffff5ce1748)
    at /home/abma/dev/spring/master/rts/System/Main.cpp:55
        app = {cmdline = 0x26fbf70, lastRequiredDraw = 0, static ogc = 0x0}
0000005 0x000000000090ddd7 in Run (argc=1, argv=0x7ffff5ce1848)
    at /home/abma/dev/spring/master/rts/System/Main.cpp:66
        ret = -1
        err = <value optimized out>
#6 0x00007f912ccf7eff in __libc_start_main (main=0x47dad0 <main(int, char**)>, argc=1,
    ubp_av=0x7ffff5ce1848, init=<value optimized out>, fini=<value optimized out>,
    rtld_fini=<value optimized out>, stack_end=0x7ffff5ce1838) at libc-start.c:226
        result = <value optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, 107166854222938408, 4778176,
                140737317312576, 0, 0, -107153783816486616, -117407838693523160},
---Type <return> to continue, or q <return> to quit---
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0xc19260, 0x7ffff5ce1848}, data = {
              prev = 0x0, cleanup = 0x0, canceltype = 12685920}}}
        not_first_call = <value optimized out>
#7 0x000000000048e8e9 in _start ()
No symbol table info available.
Additional Informationhappens when starting and instantly selecting quit
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files
  • txt file icon infolog.txt (5,035 bytes) 2011-06-22 15:03 -
    LogOutput initialized.
    Spring 0.82+.4.0
    Build date/time: Jun 21 2011 12:11:20
    Available log subsystems: Sound, VFS-detail, VFS, ArchiveScanner, unit, CollisionVolume, Texture, Piece-detail, Piece, Model-detail, Model
    Enabled log subsystems: Sound, 
    Enable or disable log subsystems using the LogSubsystems configuration key
      or the SPRING_LOG_SUBSYSTEMS environment variable (both comma separated).
      Use "none" to disable the default log subsystems.
    using default configuration source "/home/abma/.springrc"
    [CMyMath::Init] CPU SSE mask: 888, flags:
    	SSE 1.0:  1,  SSE 2.0:  1
    	SSE 3.0:  1, SSSE 3.0:  0
    	SSE 4.1:  0,  SSE 4.2:  0
    	SSE 4.0A: 1,  SSE 5.0A: 0
    	using streflop SSE FP-math mode, CPU supports SSE instructions
    [Watchdog] Installed (timeout: 10sec)
    OS: Linux 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:24 UTC 2011 x86_64
    OS: 64bit native mode
    Using read-write data directory: /home/abma/.spring/
    Using read-only data directory: /home/abma/local/spring/master/share/games/spring/
    Scanning: /home/abma/local/spring/master/share/games/spring/base
    Scanning: /home/abma/.spring/maps
    [Watchdog] Hang detection triggered for Spring 0.82+.4.0.
      (in thread: main)
    Stacktrace (main):
      (Note: This stacktrace is not 100% accurate! It just gives an impression.)
    Scanning: /home/abma/.spring/games
    Failed to scan /home/abma/.spring/games/SpringtanksRC3_2.sd7 (Unpacking/reading cost for meta file modinfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Failed to scan /home/abma/.spring/games/damagedealv1ba750.sd7 (Unpacking/reading cost for meta file modinfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Failed to scan /home/abma/.spring/games/singleunitmod1.sd7 (Unpacking/reading cost for meta file modinfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Failed to scan /home/abma/.spring/games/Advanced BA v1.63 (BA719).sd7 (Unpacking/reading cost for meta file modinfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Failed to scan /home/abma/.spring/games/Contactb001.sd7 (Unpacking/reading cost for meta file modinfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Failed to scan /home/abma/.spring/games/ExpandandExterminatev46_0.82.6.1.sd7 (Unpacking/reading cost for meta file modinfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Failed to scan /home/abma/.spring/games/BAChickens213(BA719).sd7 (Unpacking/reading cost for meta file modinfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Failed to scan /home/abma/.spring/games/advanced_ba_v1.64_ba720.sd7 (Unpacking/reading cost for meta file modinfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Failed to scan /home/abma/.spring/games/ba720fs26.sd7 (Unpacking/reading cost for meta file modinfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Failed to scan /home/abma/.spring/games/AssimpTestMod.sd7 (Unpacking/reading cost for meta file ModInfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Failed to scan /home/abma/.spring/games/ZoyShooter_1.7.5_fixed.sd7 (Unpacking/reading cost for meta file modinfo.lua is too high, please repack the archive (make sure to use a non-solid algorithm, if applicable))
    Scanning: /home/abma/.spring/packages
    Supported Video modes: 1680x1050, 1600x1200, 1440x900, 1400x1050, 1280x1024, 1280x960, 1280x800, 1280x768, 1280x720, 1152x864, 1024x768, 800x600, 640x480
    Video mode set to 1680x1050/32bit
    [f=0000000] SDL:  1.2.14
    [f=0000000] GL version:   4.1.10665 Compatibility Profile Context
    [f=0000000] GL vendor:    ATI Technologies Inc.
    [f=0000000] GL renderer:  ATI Radeon HD 5700 Series 
    [f=0000000] GLSL version: 4.10
    [f=0000000] GLEW version: 1.5.2
    [f=0000000] ATI hacks enabled
    [f=0000000] Joysticks found: 0
    [f=0000000] Joystick 0 not found
    [f=0000000] [Sound] OpenAL info:
    [f=0000000] [Sound]   Available Devices:
    [f=0000000] [Sound]               ALSA Software
    [f=0000000] [Sound]   Device:     ALSA Software
    [f=0000000] [Sound]   Vendor:     OpenAL Community
    [f=0000000] [Sound]   Version:    1.1 ALSOFT 1.12.854
    [f=0000000] [Sound]   Renderer:   OpenAL Soft
    [f=0000000] [Sound]   AL Extensions:  AL_EXTX_buffer_sub_data AL_EXT_DOUBLE AL_EXT_EXPONENT_DISTANCE AL_EXT_FLOAT32 AL_EXT_IMA4 AL_EXT_LINEAR_DISTANCE AL_EXT_MCFORMATS AL_EXT_MULAW AL_EXT_MULAW_MCFORMATS AL_EXT_OFFSET AL_EXTX_sample_buffer_object AL_EXT_source_distance_model AL_LOKI_quadriphonic
    [f=0000000] [Sound]   ALC Extensions: ALC_ENUMERATE_ALL_EXT ALC_ENUMERATION_EXT ALC_EXT_CAPTURE ALC_EXT_disconnect ALC_EXT_EFX ALC_EXT_thread_local_context
    [f=0000000] [Sound]   EFX Enabled: yes
    [f=0000000] [Sound]   Max Sounds: 128
    
    txt file icon infolog.txt (5,035 bytes) 2011-06-22 15:03 +

-Relationships
related to 0002494resolvedzerver (master) hang detection triggered when scanning for new files 
+Relationships

-Notes

~0006803

abma (administrator)

Last edited: 2011-06-23 12:35

is reproduceable, seems to happen when hang-detection is triggered twice at startup.

to easy reproduce, set HangTimeout=1 and rm ~/.spring/cache/ArchiveCache.lua

~0006809

zerver (reporter)

Some info

Sim thread hangs in SDL_Delay()
Main thread hangs in SDL_GL_SwapBuffers()
Hang Detector is making a trace for the main thread, and hangs in GlobalAlloc

Probable conclusion: SDL uses GlobalAlloc as well, and thus this is an allocator related deadlock. Possible solution would be to preallocate all, try another allocator such as VirtualAlloc or HeapAlloc, or make an allocation attempt in a thread and abort the trace attempt if it does not return within reasonable time.

~0006814

zerver (reporter)

https://github.com/spring/spring/commit/fb883b17302e84c3e256416bf1b00e843a918102
+Notes

-Issue History
Date Modified Username Field Change
2011-06-22 15:03 abma New Issue
2011-06-22 15:03 abma File Added: infolog.txt
2011-06-22 15:03 abma Graphics Card => unknown
2011-06-22 15:05 abma Relationship added related to 0002494
2011-06-22 15:05 abma Summary (master) deadlock on start => (master) deadlock/endless loop on start
2011-06-23 05:10 abma Reproducibility always => sometimes
2011-06-23 12:32 abma Note Added: 0006803
2011-06-23 12:32 abma Note Edited: 0006803
2011-06-23 12:35 abma Note Edited: 0006803
2011-06-23 12:35 abma Note Edited: 0006803
2011-06-26 03:26 zerver Note Added: 0006809
2011-06-27 02:04 zerver Status new => assigned
2011-06-27 02:04 zerver Assigned To => zerver
2011-06-27 12:29 zerver Note Added: 0006814
2011-06-27 12:29 zerver Status assigned => resolved
2011-06-27 12:29 zerver Fixed in Version => 0.82.7+git
2011-06-27 12:29 zerver Resolution open => fixed
+Issue History