[pkg-fgfs-crew] Bug#750939: Bug #750939: flightgear: Occasional deadlock when processing key input

Ludovic Brenta ludovic at ludovic-brenta.org
Fri Jun 20 17:08:21 UTC 2014


Happened again after I pressed 'x' multiple times; in a Seneca II.

When I attached the debugger, sound stopped; when I typed "cont" in the
debugger, sound resumed.  This suggests that thread 5 is not part of the
deadlock; but we already knew that, didn't we ? :)

-- 
Ludovic Brenta.

(gdb) thread apply all bt

Thread 7 (Thread 0x7f61d3f98700 (LWP 31715)):
#0  0x00007f61dffc60b0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f61df88329b in waitOnNotEmpty (this=0x3323b50) at /usr/src/simgear.git/simgear/threads/SGQueue.hxx:392
#2  simgear::SGTerraSync::SvnThread::runInternal (this=0x3323970) at /usr/src/simgear.git/simgear/scene/tsync/terrasync.cxx:651
#3  0x00007f61df883535 in simgear::SGTerraSync::SvnThread::run (this=0x3323970) at /usr/src/simgear.git/simgear/scene/tsync/terrasync.cxx:474
#4  0x00007f61df85feea in SGThread::PrivateData::start_routine (data=<optimized out>) at /usr/src/simgear.git/simgear/threads/SGThread.cxx:204
#5  0x00007f61dffc20ca in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#6  0x00007f61daa65ffd in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 6 (Thread 0x7f61d2c3e700 (LWP 31717)):
#0  0x00007f61dffc60b0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f61df7a7933 in (anonymous namespace)::Resolver::run (this=0x3446680) at /usr/src/simgear.git/simgear/io/raw_socket.cxx:168
#2  0x00007f61df85feea in SGThread::PrivateData::start_routine (data=<optimized out>) at /usr/src/simgear.git/simgear/threads/SGThread.cxx:204
#3  0x00007f61dffc20ca in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#4  0x00007f61daa65ffd in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 5 (Thread 0x7f61c237e700 (LWP 31719)):
#0  0x00007f61daa5ad5d in poll () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f61c1888c26 in ?? () from /usr/lib/x86_64-linux-gnu/libasound.so.2
#2  0x00007f61e0708be8 in ?? () from /usr/lib/x86_64-linux-gnu/libopenal.so.1
#3  0x00007f61e070054a in ?? () from /usr/lib/x86_64-linux-gnu/libopenal.so.1
#4  0x00007f61dffc20ca in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#5  0x00007f61daa65ffd in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 4 (Thread 0x7f61d7a07700 (LWP 31720)):
#0  0x00007f61dffc60b0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f61df79f5db in pop (this=0x26e9958) at /usr/src/simgear.git/simgear/threads/SGQueue.hxx:228
#2  LogStreamPrivate::run (this=0x26e9940) at /usr/src/simgear.git/simgear/debug/logstream.cxx:261
#3  0x00007f61df85feea in SGThread::PrivateData::start_routine (data=<optimized out>) at /usr/src/simgear.git/simgear/threads/SGThread.cxx:204
#4  0x00007f61dffc20ca in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#5  0x00007f61daa65ffd in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 3 (Thread 0x7f61c0e4d700 (LWP 31721)):
#0  0x00007f61dffc60b0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f61dda8fd9e in OpenThreads::Condition::wait(OpenThreads::Mutex*) () from /usr/lib/libOpenThreads.so.14
#2  0x00007f61defad5c8 in osgDB::DatabasePager::DatabaseThread::run() () from /usr/lib/libosgDB.so.99
#3  0x00007f61dda8f82b in OpenThreads::ThreadPrivateActions::StartThread(void*) () from /usr/lib/libOpenThreads.so.14
#4  0x00007f61dffc20ca in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#5  0x00007f61daa65ffd in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 2 (Thread 0x7f61bbfff700 (LWP 31722)):
#0  0x00007f61dffc60b0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f61dda8fd9e in OpenThreads::Condition::wait(OpenThreads::Mutex*) () from /usr/lib/libOpenThreads.so.14
#2  0x00007f61defad5c8 in osgDB::DatabasePager::DatabaseThread::run() () from /usr/lib/libosgDB.so.99
#3  0x00007f61dda8f82b in OpenThreads::ThreadPrivateActions::StartThread(void*) () from /usr/lib/libOpenThreads.so.14
#4  0x00007f61dffc20ca in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#5  0x00007f61daa65ffd in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 1 (Thread 0x7f61e0b227c0 (LWP 31708)):
#0  0x00007f61dffc60b0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f61df80452b in naSemDown (sh=0xa7a7260) at /usr/src/simgear.git/simgear/nasal/thread-posix.c:57
#2  0x00007f61df7fb5af in bottleneck () at /usr/src/simgear.git/simgear/nasal/gc.c:111
#3  0x00007f61df7fbb67 in naGC_swapfree (target=0x10ed6ab8, val=0x191c1bb0) at /usr/src/simgear.git/simgear/nasal/gc.c:332
#4  0x00007f61df7fc189 in resize (hash=0x10ed6ab0) at /usr/src/simgear.git/simgear/nasal/hash.c:120
#5  0x00007f61df7fc975 in naiHash_newsym (hash=<optimized out>, sym=0xd6fe8c8, val=val at entry=0x7fff96687d20) at /usr/src/simgear.git/simgear/nasal/hash.c:259
#6  0x00007f61df7f57bf in setupArgs (ctx=ctx at entry=0xd853950, args=args at entry=0x7fff96687d20, nargs=nargs at entry=1, f=0xd853950, f=0xd853950)
    at /usr/src/simgear.git/simgear/nasal/code.c:260
#7  0x00007f61df7f8bb8 in naCall (ctx=0xd853950, func=..., argc=1, args=0x7fff96687d20, obj=..., locals=...) at /usr/src/simgear.git/simgear/nasal/code.c:902
#8  0x0000000000919f3a in FGNasalSys::wrappedPropsNode(SGPropertyNode*) ()
#9  0x000000000092013d in NasalCommand::operator()(SGPropertyNode const*) ()
#10 0x00007f61df852ade in SGCommandMgr::execute (this=<optimized out>, name="show-message", arg=0x192197c0) at /usr/src/simgear.git/simgear/structure/commands.cxx:89
#11 0x000000000091bd68 in ?? ()
#12 0x00007f61df7f62ad in setupFuncall (ctx=ctx at entry=0x9efa310, nargs=2, mcall=mcall at entry=0, named=named at entry=0) at /usr/src/simgear.git/simgear/nasal/code.c:319
#13 0x00007f61df7f741c in run (ctx=ctx at entry=0x9efa310) at /usr/src/simgear.git/simgear/nasal/code.c:716
#14 0x00007f61df7f8bc0 in naCall (ctx=ctx at entry=0x9efa310, func=..., argc=argc at entry=0, args=0x0, obj=..., locals=...) at /usr/src/simgear.git/simgear/nasal/code.c:904
#15 0x00007f61df7f8e60 in naCallMethodCtx (ctx=0x9efa310, code=..., self=..., argc=0, args=<optimized out>, locals=...) at /usr/src/simgear.git/simgear/nasal/code.c:975
#16 0x0000000000919d59 in FGNasalSys::callWithContext(Context*, naRef, int, naRef*, naRef) ()
#17 0x000000000091b5d9 in FGNasalSys::handleCommand(char const*, char const*, char const*, SGPropertyNode const*) ()
#18 0x0000000000919617 in FGNasalSys::handleCommand(SGPropertyNode const*) ()
#19 0x00007f61df82a3bb in SGBinding::innerFire (this=0xd8ded90) at /usr/src/simgear.git/simgear/structure/SGBinding.cxx:92
#20 0x00007f61df82aed9 in SGBinding::fire (this=<optimized out>, params=params at entry=0x0) at /usr/src/simgear.git/simgear/structure/SGBinding.cxx:111
#21 0x00007f61df82af47 in fireBindingList (aBindings=..., params=0x0) at /usr/src/simgear.git/simgear/structure/SGBinding.cxx:140
#22 0x00000000007489d1 in FGKeyboardInput::doKey(int, int, int, int) ()
#23 0x0000000000acec18 in flightgear::FGEventHandler::handle(osgGA::GUIEventAdapter const&, osgGA::GUIActionAdapter&) ()
#24 0x00007f61de48ea77 in osgViewer::Viewer::eventTraversal() () from /usr/lib/libosgViewer.so.99
#25 0x00007f61de490219 in osgViewer::ViewerBase::frame(double) () from /usr/lib/libosgViewer.so.99
#26 0x0000000000ad3eaa in fgOSMainLoop() ()
#27 0x00000000005e150c in fgMainInit(int, char**) ()
#28 0x00000000005a43f1 in main ()



More information about the pkg-fgfs-crew mailing list