Linux - Random segfaults
Ghosthree3
Join Date: 2010-02-13 Member: 70557Members, Reinforced - Supporter
I've started playing this game again in the last few days after remembering that it has Linux support. However, since doing so I have been plagued with random freezes/crashes that are apparently segfaults. There's no commonality between them that I've noticed other than that I'm simply playing the game. It happens on either team, with any weapon/form, and has an interval of anywhere between several hours and several minutes (one time 3-4 hours, then 2 hours and several more crashes later, 3 minutes after I had reconnected). 9 times out of 10 when it freezes I am forced to SIGKILL it or it will hang indefinitely, but occasionally it closes itself after 30 seconds or so.
Here's the gdb backtrace from the last one I had.
The Crash Handler seems to only work when the game closes itself, which it did not do this time so I have no associated one to attach.
However I can tell you that the log.txt will contain nothing of interest, and I do not know how to analyze the dump.dmp to see if it would. If you require it I can try and obtain one, but the crashes are already random, a 'proper' crash might take a while to catch.
EDIT: Got another segfault, backtrace looks identical other than different memory addresses.
Here's the gdb backtrace from the last one I had.
Thread 1 "ns2_linux" received signal SIGSEGV, Segmentation fault. 0x00007f1fc5d13d6e in __memmove_sse2_unaligned_erms () from /usr/lib/libc.so.6 (gdb) bt #0 0x00007f1fc5d13d6e in __memmove_sse2_unaligned_erms () from /usr/lib/libc.so.6 #1 0x00007f1f73e63f29 in ?? () from /usr/lib/libnvidia-glcore.so.387.34 #2 0x00007f1f73e6ea93 in ?? () from /usr/lib/libnvidia-glcore.so.387.34 #3 0x00007f1f73a32b97 in ?? () from /usr/lib/libnvidia-glcore.so.387.34 #4 0x00007f1fc7c39346 in M4::OpenGLDevice::DrawIndexedPrimitives (this=0x7f1fbc00f7f0, primitiveType=primitiveType@entry=M4::RenderPrimitiveType_TriangleList, minVertexIndex=minVertexIndex@entry=0, numVertices=65, startIndex=startIndex@entry=0, numPrimitives=numPrimitives@entry=48, numInstances=2) at ../Source/Render/OpenGLDevice.cpp:1084 #5 0x00007f1fc7c63464 in M4::RenderModelProxy::RenderFaceSet (this=0x7f1f54970ee0, faceSetIndex=faceSetIndex@entry=0, numInstances=2) at ../Source/Render/RenderModelProxy.cpp:331 #6 0x00007f1fc7c5f8ef in M4::RenderModelArray::RenderFaceSet (this=0x7f1ea3db8ea0, faceSetIndex=0) at ../Source/Render/RenderModelArray.cpp:424 #7 0x00007f1fc7c7abda in M4::ObjectRenderer<M4::RenderModelArray>::RenderFaceSet (this=0x7ffe4ca15fa7, faceSet=..., faceSet=...) at ../Source/Render/RenderRenderer.cpp:357 #8 M4::RenderRenderer::RenderFaceSets<M4::RenderModelArray, M4::ObjectRenderer<M4::RenderModelArray> > ( this=this@entry=0x7f1f56545d80, context=..., viewerParams=..., renderer=..., faceSets=faceSets@entry=0x7f1ef3f25070, numFaceSets=numFaceSets@entry=22) at ../Source/Render/RenderRenderer.cpp:3338 #9 0x00007f1fc7c77db6 in M4::RenderRenderer::RenderModelArrays (this=this@entry=0x7f1f56545d80, context=..., viewerParams=..., modelArray=<optimized out>, numModelArrays=<optimized out>, techniqueIndex=techniqueIndex@entry=1, reverseCulling=false, shadows=false) at ../Source/Render/RenderRenderer.cpp:2539 #10 0x00007f1fc7c78fec in M4::RenderRenderer::RenderObjects (this=this@entry=0x7f1f56545d80, context=..., viewerParams=..., typeIndex=..., techniqueIndex=techniqueIndex@entry=1, objectsMask=objectsMask@entry=4294967039) at ../Source/Render/RenderRenderer.cpp:2088 #11 0x00007f1fc7c794b2 in M4::RenderRenderer::RenderObjects (this=this@entry=0x7f1f56545d80, scene=scene@entry= 0x7f1f56eedc20, context=..., typeIndexes=typeIndexes@entry=0x7ffe4ca16690, camera=..., viewport=..., techniqueIndex=1, objectsMask=4294967039, zonesMask=4294967295) at ../Source/Render/RenderRenderer.cpp:2911 #12 0x00007f1fc7c79d81 in M4::RenderRenderer::Render (this=0x7f1f56545d80, pipeline=pipeline@entry=0x7f1f203c9010, colorTarget=0x7f1fbc04ef40, depthTarget=depthTarget@entry=0x7f1fbc669e60, faceIndex=faceIndex@entry=0, sourceTexture=sourceTexture@entry=0x0, sceneSettings=0x7f1efb482782, setupSettings=0x7ffe4ca169c0, scene=0x7f1f56eedc20, time=<optimized out>, camera=..., viewport=..., visibleObjects=..., background=<optimized out>) at ../Source/Render/RenderRenderer.cpp:1229 #13 0x00007f1fc7c8784b in M4::RenderScene::InternalRender (this=this@entry=0x7f1f56eedc20, settings=..., colorTarget=<optimized out>, colorTarget@entry=0x7f1fbc04ef40, depthTarget=depthTarget@entry=0x7f1fbc669e60, faceIndex=faceIndex@entry=0, pipeline=pipeline@entry=0x7f1f203c9010, camera=..., prevCamera=0x0, viewport=..., renderMask=4294967295, cullingMode=M4::RenderScene_CullingMode_Occlusion, background=0x0, deltaTime=deltaTime@entry=0.0173339844) at ../Source/Render/RenderScene.cpp:794 #14 0x00007f1fc7c87c5b in M4::RenderScene::InternalRender (this=this@entry=0x7f1f56eedc20, settings=..., colorTarget=colorTarget@entry=0x7f1fbc04ef40, depthTarget=depthTarget@entry=0x7f1fbc669e60, faceIndex=faceIndex@entry=0, camera=camera@entry=0x7f1f2243a810, _viewport=0x0, background=0x0, deltaTime=deltaTime@entry=0.0173339844) at ../Source/Render/RenderScene.cpp:732 #15 0x00007f1fc7c87edc in M4::RenderScene::RenderMainCamera (this=this@entry=0x7f1f56eedc20, settings=..., colorTarget=0x7f1fbc04ef40, depthTarget=depthTarget@entry=0x7f1fbc669e60, faceIndex=faceIndex@entry=0, camera=camera@entry=0x7f1f2243a810, viewport=0x0, background=0x0, time=time@entry=1674.8392333984375) at ../Source/Render/RenderScene.cpp:693 #16 0x00007f1fc7c87f95 in M4::RenderScene::Render (this=0x7f1f56eedc20, settings=..., colorTarget=<optimized out>, depthTarget=0x7f1fbc669e60, camera=0x7f1f2243a810, background=background@entry=0x0, time=1674.8392333984375, time@entry=6.9057667515803026e-310) at ../Source/Render/RenderScene.cpp:492 #17 0x0000000000454850 in M4::ClientWorld::Render (this=<optimized out>, drawer=..., swapChain=swapChain@entry=0x7f1fbc72dfa0) at ../Source/Spark_Client/ClientWorld.cpp:3169 #18 0x0000000000433e36 in M4::ClientGame::Render (this=this@entry=0x7f1fbc04a010, swapChain=0x7f1fbc72dfa0) at ../Source/Spark_Client/ClientGame.cpp:2002 #19 0x0000000000446f9e in M4::ClientGame::Update (this=0x7f1fbc04a010, deltaTime=<optimized out>) at ../Source/Spark_Client/ClientGame.cpp:1184 #20 0x0000000000430a45 in M4::ClientEngine::Update (this=0x7f1fc8e0a420, deltaTime=0.018223483999463497) at ../Source/Spark_Client/ClientEngine.cpp:253 #21 0x00000000004a52b1 in M4::BaseEngine::RunFrame (this=0x7f1fc8e0a420) at ../Source/Spark_Server/BaseEngine.cpp:212 #22 M4::BaseEngine::Run (this=0x7f1fc8e0a420) at ../Source/Spark_Server/BaseEngine.cpp:176 #23 0x000000000042e13c in main (argc=<optimized out>, argv=<optimized out>) at ../Source/ShooterExe/Main.cpp:113
The Crash Handler seems to only work when the game closes itself, which it did not do this time so I have no associated one to attach.
However I can tell you that the log.txt will contain nothing of interest, and I do not know how to analyze the dump.dmp to see if it would. If you require it I can try and obtain one, but the crashes are already random, a 'proper' crash might take a while to catch.
EDIT: Got another segfault, backtrace looks identical other than different memory addresses.
Comments
Unfortunately nothing can be done (other than this bandaid) unless the bug in the Spark engine is fixed.