View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0004986 | Spring engine | General | public | 2015-11-01 01:34 | 2015-11-27 08:03 | ||||
Reporter | abma | ||||||||
Assigned To | jK | ||||||||
Priority | normal | Severity | crash | Reproducibility | have not tried | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | 100.0+git | ||||||||
Target Version | 101.0 | Fixed in Version | |||||||
Summary | 0004986: failed assert in rts/Sim/Misc/LosHandler.cpp:378 | ||||||||
Description | spring: rts/Sim/Misc/LosHandler.cpp:378: static SLosInstance::TLosStatus ILosType::OptimizeInstanceUpdate(SLosInstance*): Assertion `li->refCount > 0' failed. [f=0000767] [CrashHandler] Error: Aborted (SIGABRT) in spring 100.0.1-275-g9046711 develop (Debug) [f=0000767] [CrashHandler] Error: Halted Stacktrace for Spring 100.0.1-275-g9046711 develop (Debug) using libunwind: [f=0000767] [CrashHandler] Error: [00] .../rts/System/Platform/Linux/CrashHandler.cpp:816 CrashHandler::HaltedStacktrace(std::__cxx11::basic_string<char, std::char_traits<char>, std::a [...] [f=0000767] [CrashHandler] Error: [01] .../rts/System/Platform/Linux/CrashHandler.cpp:922 CrashHandler::HandleSignal(int, siginfo_t*, void*) [f=0000767] [CrashHandler] Error: [02] /lib/x86_64-linux-gnu/libpthread.so.0(+0x10d10) [0x7f0717b83d10] __restore_rt [f=0000767] [CrashHandler] Error: [03] /build/buildd/glibc-2.21/signal/../sysdeps/unix/sysv/linux/raise.c:55 __GI_raise [f=0000767] [CrashHandler] Error: [04] /build/buildd/glibc-2.21/stdlib/abort.c:91 __GI_abort [f=0000767] [CrashHandler] Error: [05] /build/buildd/glibc-2.21/assert/assert.c:92 __assert_fail_base [f=0000767] [CrashHandler] Error: [06] /lib/x86_64-linux-gnu/libc.so.6(+0x2e0f2) [0x7f07141990f2] __assert_fail [f=0000767] [CrashHandler] Error: [07] .../rts/Sim/Misc/LosHandler.cpp:379 ILosType::OptimizeInstanceUpdate(SLosInstance*) [f=0000767] [CrashHandler] Error: [08] .../rts/Sim/Misc/LosHandler.cpp:424 (discriminator 2) ILosType::Update() [f=0000767] [CrashHandler] Error: [09] .../rts/Sim/Misc/LosHandler.cpp:652 CLosHandler::Update()::{lambda(int)#1}::operator()(int) const [f=0000767] [CrashHandler] Error: [10] /usr/include/c++/5/functional:1873 std::_Function_handler<void (int), CLosHandler::Update()::{lambda(int)#1}>::_M_invoke(std::_An [...] [f=0000767] [CrashHandler] Error: [11] /usr/include/boost/bind/bind_mf_cc.hpp:114 boost::_bi::bind_t<void, boost::_mfi::mf2<void, CGame, std::__cxx11::basic_string<char, std::c [...] [f=0000767] [CrashHandler] Error: [12] .../rts/Game/PreGame.cpp:491 (discriminator 1) CPreGame::GameDataReceived(boost::shared_ptr<netcode::RawPacket const>) [f=0000767] [CrashHandler] Error: [13] .../rts/Game/PreGame.cpp:373 (discriminator 4) CPreGame::StartServerForDemo(std::__cxx11::basic_string<char, std::char_traits<char>, std::all [...] [f=0000767] [CrashHandler] Error: [14] /usr/include/boost/thread/future.hpp:2919 boost::detail::task_shared_state<std::_Bind<std::function<void (int)> (int)>, void>::do_run() [f=0000767] [CrashHandler] Error: [15] /usr/include/boost/thread/future.hpp:2501 boost::detail::task_base_shared_state<void>::run() [f=0000767] [CrashHandler] Error: [16] /usr/include/boost/thread/future.hpp:3291 boost::packaged_task<void>::operator()() [f=0000767] [CrashHandler] Error: [17] .../rts/System/ThreadPool.h:183 TaskGroup<std::function<void (int)> const, int const>::enqueue(std::function<void (int)> const [...] [f=0000767] [CrashHandler] Error: [18] /usr/include/c++/5/functional:1873 std::_Function_handler<void (), TaskGroup<std::function<void (int)> const, int const>::enqueue [...] [f=0000767] [CrashHandler] Error: [19] ./spring(_ZNKSt8functionIFbvEEclEv+0x5c) [0x630f82] ?? [f=0000767] [CrashHandler] Error: [20] .../rts/System/ThreadPool.cpp:144 ThreadPool::DoTask(std::shared_ptr<ITaskGroup>) [f=0000767] [CrashHandler] Error: [21] .../rts/System/ThreadPool.cpp:181 ThreadPool::WaitForFinished(std::shared_ptr<ITaskGroup>) [f=0000767] [CrashHandler] Error: [22] .../rts/System/ThreadPool.h:116 (discriminator 2) void ThreadPool::WaitForFinished<TaskGroup<std::function<void (int)> const, int const> >(std:: [...] [f=0000767] [CrashHandler] Error: [23] .../rts/System/ThreadPool.h:319 (discriminator 2) for_mt(int, int, int, std::function<void (int)> const&&) [f=0000767] [CrashHandler] Error: [24] .../rts/System/ThreadPool.h:326 for_mt(int, int, std::function<void (int)> const&&) [f=0000767] [CrashHandler] Error: [25] .../rts/Sim/Misc/LosHandler.cpp:644 CLosHandler::Update() [f=0000767] [CrashHandler] Error: [26] .../rts/Game/Game.cpp:1567 CGame::SimFrame() [f=0000767] [CrashHandler] Error: [27] .../rts/Net/NetCommands.cpp:512 CGame::ClientReadNet() [f=0000767] [CrashHandler] Error: [28] .../rts/Game/Game.cpp:1007 CGame::Update() [f=0000767] [CrashHandler] Error: [29] .../rts/System/SpringApp.cpp:949 SpringApp::Update() [f=0000767] [CrashHandler] Error: [30] .../rts/System/SpringApp.cpp:985 SpringApp::Run() [f=0000767] [CrashHandler] Error: [31] .../rts/System/Main.cpp:48 Run(int, char**) [f=0000767] [CrashHandler] Error: [32] .../rts/System/Main.cpp:91 main [f=0000767] [CrashHandler] Error: [33] /build/buildd/glibc-2.21/csu/libc-start.c:323 __libc_start_main [f=0000767] [CrashHandler] Error: [34] ./spring(_start+0x29) [0x5c02f9] ?? | ||||||||
Steps To Reproduce | /cheat /give all /give all 1 | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | |||||||||
Attached Files |
|
![]() |
|
cleanrock (reporter) 2015-11-01 10:31 Last edited: 2015-11-01 10:47 |
fwiw, With this demo i get a crash at Rendering/GL/LightHandler.cpp:141 at frame 745, SIGFPE in libnvidia-glcore.so.355.11 caused by call to glLightfv(lightID, GL_POSITION, &lightPos.x). I guess nvidia don't like the w component: x = 3448 y = 350 z = 3248 w = 4.59163468e-41 |
cleanrock (reporter) 2015-11-01 11:08 Last edited: 2015-11-01 11:35 |
If i change ParseLight to use a 4 sized array the glLightfv crash is gone and i see the mentioned crash at LosHandler.cpp:378. float array[4] = {0.0f, 0.0f, 0.0f, 1.0f}; I am pretty sure the Light::SetPosition(const float array[3]) { position = array; } will set position.w to array[3] which is uninitialised in current code. |
abma (administrator) 2015-11-01 14:56 |
oh, indeed. i didn't know that the position here uses 4 values https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml also see 0004985 |
abma (administrator) 2015-11-01 15:04 |
in 100.0.1-277-g88c7414 i still get the failed assert: spring: rts/Sim/Misc/LosHandler.cpp:378: static SLosInstance::TLosStatus ILosType::OptimizeInstanceUpdate(SLosInstance*): Assertion `li->refCount > 0' failed. [f=0000767] [CrashHandler] Error: Aborted (SIGABRT) in spring 100.0.1-277-g88c7414 develop (Debug) [f=0000767] [CrashHandler] Error: Halted Stacktrace for Spring 100.0.1-277-g88c7414 develop (Debug) using libunwind: [f=0000767] [CrashHandler] Error: [00] .../rts/System/Platform/Linux/CrashHandler.cpp:816 CrashHandler::HaltedStacktrace(std::__cxx11::basic_string<char, std::char_traits<char>, std::a [...] [f=0000767] [CrashHandler] Error: [01] .../rts/System/Platform/Linux/CrashHandler.cpp:922 CrashHandler::HandleSignal(int, siginfo_t*, void*) [f=0000767] [CrashHandler] Error: [02] /lib/x86_64-linux-gnu/libpthread.so.0(+0x10d10) [0x7f0902ff5d10] __restore_rt [f=0000767] [CrashHandler] Error: [03] /build/buildd/glibc-2.21/signal/../sysdeps/unix/sysv/linux/raise.c:55 __GI_raise [f=0000767] [CrashHandler] Error: [04] /build/buildd/glibc-2.21/stdlib/abort.c:91 __GI_abort [f=0000767] [CrashHandler] Error: [05] /build/buildd/glibc-2.21/assert/assert.c:92 __assert_fail_base [f=0000767] [CrashHandler] Error: [06] /lib/x86_64-linux-gnu/libc.so.6(+0x2e0f2) [0x7f08ff60b0f2] __assert_fail [f=0000767] [CrashHandler] Error: [07] /home/abma/dev/spring/develop/rts/Sim/Misc/LosHandler.cpp:379 ILosType::OptimizeInstanceUpdate(SLosInstance*) [f=0000767] [CrashHandler] Error: [08] /home/abma/dev/spring/develop/rts/Sim/Misc/LosHandler.cpp:424 (discriminator 2) ILosType::Update() [f=0000767] [CrashHandler] Error: [09] /home/abma/dev/spring/develop/rts/Sim/Misc/LosHandler.cpp:652 CLosHandler::Update()::{lambda(int)#1}::operator()(int) const [f=0000767] [CrashHandler] Error: [10] /usr/include/c++/5/functional:1873 std::_Function_handler<void (int), CLosHandler::Update()::{lambda(int)#1}>::_M_invoke(std::_An [...] [f=0000767] [CrashHandler] Error: [11] /usr/include/boost/bind/bind.hpp:874 boost::_bi::bind_t<void, boost::_mfi::mf2<void, CGame, std::__cxx11::basic_string<char, std::c [...] [f=0000767] [CrashHandler] Error: [12] /home/abma/dev/spring/develop/rts/Game/PreGame.cpp:494 CPreGame::GameDataReceived(boost::shared_ptr<netcode::RawPacket const>) [f=0000767] [CrashHandler] Error: [13] /home/abma/dev/spring/develop/rts/Game/PreGame.cpp:379 (discriminator 1) CPreGame::StartServerForDemo(std::__cxx11::basic_string<char, std::char_traits<char>, std::all [...] [f=0000767] [CrashHandler] Error: [14] /usr/include/boost/thread/future.hpp:2919 boost::detail::task_shared_state<std::_Bind<std::function<void (int)> (int)>, void>::do_run() [f=0000767] [CrashHandler] Error: [15] /usr/include/boost/thread/future.hpp:2501 boost::detail::task_base_shared_state<void>::run() [f=0000767] [CrashHandler] Error: [16] /usr/include/boost/thread/future.hpp:3291 boost::packaged_task<void>::operator()() [f=0000767] [CrashHandler] Error: [17] /home/abma/dev/spring/develop/rts/System/ThreadPool.h:183 TaskGroup<std::function<void (int)> const, int const>::enqueue(std::function<void (int)> const [...] [f=0000767] [CrashHandler] Error: [18] /usr/include/c++/5/functional:1873 std::_Function_handler<void (), TaskGroup<std::function<void (int)> const, int const>::enqueue [...] [f=0000767] [CrashHandler] Error: [19] ./spring(_ZNKSt8functionIFbvEEclEv+0x5c) [0x631072] ?? [f=0000767] [CrashHandler] Error: [20] /home/abma/dev/spring/develop/rts/System/ThreadPool.cpp:104 ThreadPool::DoTask(boost::shared_lock<boost::shared_mutex>&) [f=0000767] [CrashHandler] Error: [21] /home/abma/dev/spring/develop/rts/System/ThreadPool.cpp:165 ThreadPool::WorkerLoop(int) [f=0000767] [CrashHandler] Error: [22] /usr/include/boost/bind/bind.hpp:254 void boost::_bi::list1<boost::_bi::value<int> >::operator()<void (*)(int), boost::_bi::list0>( [...] [f=0000767] [CrashHandler] Error: [23] /usr/include/boost/bind/bind.hpp:893 boost::_bi::bind_t<void, void (*)(int), boost::_bi::list1<boost::_bi::value<int> > >::operator()() [f=0000767] [CrashHandler] Error: [24] /usr/include/boost/thread/detail/thread.hpp:117 boost::detail::thread_data<boost::_bi::bind_t<void, void (*)(int), boost::_bi::list1<boost::_b [...] [f=0000767] [CrashHandler] Error: [25] /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.58.0(+0x10bc5) [0x7f09006e5bc5] boost::this_thread::interruption_point() [f=0000767] [CrashHandler] Error: [26] /build/buildd/glibc-2.21/nptl/pthread_create.c:333 start_thread [f=0000767] [CrashHandler] Error: [27] /build/buildd/glibc-2.21/misc/../sysdeps/unix/sysv/linux/x86_64/clone.S:111 clone [f=0000767] Error: [ErrorMessageBox][1] msg="Spring has crashed: Aborted (SIGABRT). (the SIGFPE should be fixed) |
jK (developer) 2015-11-27 08:03 |
Fix f6e37ecb8723b61d9c4c81f72d3ffe8155ea6f54 committed to develop branch: fix 0004986: failed asserts in LosHandler, repo: spring changeset id: 5835 |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2015-11-01 01:34 | abma | New Issue | |
2015-11-01 01:34 | abma | Status | new => assigned |
2015-11-01 01:34 | abma | Assigned To | => jK |
2015-11-01 01:34 | abma | File Added: 20151101_013150_DeltaSiegeDry_100.0.1-275-g9046711 develop.sdf | |
2015-11-01 10:31 | cleanrock | Note Added: 0015306 | |
2015-11-01 10:47 | cleanrock | Note Edited: 0015306 | View Revisions |
2015-11-01 11:08 | cleanrock | Note Added: 0015307 | |
2015-11-01 11:35 | cleanrock | Note Edited: 0015307 | View Revisions |
2015-11-01 14:56 | abma | Note Added: 0015310 | |
2015-11-01 15:04 | abma | Note Added: 0015311 | |
2015-11-27 08:03 | jK | Changeset attached | => spring develop f6e37ecb |
2015-11-27 08:03 | jK | Note Added: 0015347 | |
2015-11-27 08:03 | jK | Status | assigned => resolved |
2015-11-27 08:03 | jK | Resolution | open => fixed |