secondlife / viewer

🖥️ Second Life's official client
GNU Lesser General Public License v2.1
211 stars 53 forks source link

BugSplat Crash: SecondLifeViewer!LLRender::flush(1637) #1856

Closed sl-service-account closed 1 month ago

sl-service-account commented 4 months ago

Test plan:

  1. Verify the viewer starts and can log in on a Windows system with any of the following video cards. Intel(R) HD Graphics (this one may be unsupported on 64bit Windows) Intel(R) HD Graphics Family (this one may be unsupported on 64bit Windows) Intel(R) HD Graphics 4000 Intel(R) HD Graphics 4400 Intel(R) HD Graphics 4600 Intel(R) HD Graphics 5500 Intel(R) HD Graphics 6000
  2. Please note which video card was tested.

Expected: Log in without crash

BugSplat Key Crash 94199

Sample Version: 7.1.9.9620320242

Sample Callstack:

SecondLifeViewer!LLRender::flushC:/a/viewer/viewer/indra/llrender/llrender.cpp(1637)
SecondLifeViewer!LLPipeline::createLUTBuffersC:/a/viewer/viewer/indra/newview/pipeline.cpp(1314)
SecondLifeViewer!LLPipeline::createGLBuffersC:/a/viewer/viewer/indra/newview/pipeline.cpp(1247)
SecondLifeViewer!LLViewerShaderMgr::setShadersC:/a/viewer/viewer/indra/newview/llviewershadermgr.cpp(684)
SecondLifeViewer!LLPipeline::initC:/a/viewer/viewer/indra/newview/pipeline.cpp(455)
SecondLifeViewer!LLAppViewer::initWindowC:/a/viewer/viewer/indra/newview/llappviewer.cpp(3159)
SecondLifeViewer!LLAppViewer::initC:/a/viewer/viewer/indra/newview/llappviewer.cpp(942)
SecondLifeViewer!LLAppViewerWin32::initC:/a/viewer/viewer/indra/newview/llappviewerwin32.cpp(796)
SecondLifeViewer!wWinMainC:/a/viewer/viewer/indra/newview/llappviewerwin32.cpp(467)
SecondLifeViewer!invoke_mainD:/a/_work/1/s/src/vctools/crt/vcstartup/src/startup/exe_common.inl(118)
SecondLifeViewer!__scrt_common_main_sehD:/a/_work/1/s/src/vctools/crt/vcstartup/src/startup/exe_common.inl(288)
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
AtlasLinden commented 4 months ago

This specific stack key has only been hit by two users. However, a similar stack that is currently hit a lot more can be found here: https://github.com/secondlife/viewer/issues/1531

Dan-Linden commented 2 months ago

This crash has increased significantly in 7.1.9.10515727195. My system with an Intel HD Graphics 4400 crashes on startup: https://app.bugsplat.com/v2/crash?database=SecondLife_Viewer_2018&id=1513508

canny[bot] commented 2 months ago

This issue has been linked to a Canny post: Crashes while Initializing Texture Cache - Fresh Install :tada:

Dan-Linden commented 2 months ago

This fix has been verified on Intel(R) HD Graphics 4400 & 4600

igorlproductengine commented 2 months ago

Passed QA. Verified on the Second Life Release 7.1.10.10622905308 (64bit) on Win10 in the scope of secondlife/iqa#323.

The viewer does not start in Win10 on Intel HD and Intel HD 3000 video cards - giving a message about problems with the driver. There is no crash.

The same behavior is on the current release 7.1.9.10515727195 viewer.

The viewer runs without crashing on the Intel HD Graphics 610 video card.

Taking into account the tested Intel HD Graphics 4400 and 4600 video cards, I consider the bug fixed.

Tested on: Win10: Intel HD and Intel HD 3000 screenshot: 7 1 10 10622905308 - Win10 - Intel HD and Intel HD 3000

Log_Intel_HD_3000: SecondLife_Intel_HD_3000.log Log_Intel_HD: SecondLife_Intel_HD.log

Win11: Intel HD 610 screenshot: 7 1 10 10622905308- Win11 - Intel HD 610

log_Intel_HD_610: SecondLife_Intel_HD_610.log

igorlproductengine commented 2 months ago

Failed QA. Verified on the Second Life Release 7.1.10.10622905308 (64bit) on Win10/OSX in the scope of https://github.com/secondlife/iqa/issues/323.

The viewer does not start in Win10 on the Intel HD 4000 video card - without giving a message about problems with the driver. There is the crash: https://app.bugsplat.com/v2/crash?database=SecondLife_Viewer_2018&id=1521049.

Logs: SecondLifeLOGS_7.1.10.10622905308.zip

igorlproductengine commented 2 months ago

Failed QA. Verified on the Second Life Release 7.1.10.10708851543 (64bit) on Win10 in the scope of secondlife/iqa#326.

The viewer does not start in Win10 on the Intel HD 4000 video card - without giving a message about problems with the driver. I didn't completely check this issue according to the test plan because of the crash. There is the crash: https://app.bugsplat.com/v2/crash?database=SecondLife_Viewer_2018&id=1523757

akleshchev commented 2 months ago
WARNING # llrender/llshadermgr.cpp(932) LLShaderMgr::linkProgramObject : GLSL Linker Error:
WARNING # llrender/llshadermgr.cpp(435) LLShaderMgr::dumpObjectLog : Shader loading from linker
WARNING # llrender/llshadermgr.cpp(436) LLShaderMgr::dumpObjectLog : \nERROR: Undefined function call: "srgb_to_linear(vf3;)".  Function not found.\n
WARNING # llrender/llshadermgr.cpp(435) LLShaderMgr::dumpObjectLog : Shader loading from Terrain Bake Shader RGB5
WARNING # llrender/llshadermgr.cpp(436) LLShaderMgr::dumpObjectLog : \nERROR: Undefined function call: "srgb_to_linear(vf3;)".  Function not found.\n
WARNING # llrender/llglslshader.cpp(469) LLGLSLShader::createShader : Failed to link using shader level 2 trying again using shader level 1
WARNING # llrender/llshadermgr.cpp(932) LLShaderMgr::linkProgramObject : GLSL Linker Error:
WARNING # llrender/llshadermgr.cpp(435) LLShaderMgr::dumpObjectLog : Shader loading from linker
WARNING # llrender/llshadermgr.cpp(436) LLShaderMgr::dumpObjectLog : \nERROR: Undefined function call: "get_terrain_mix_weights(f1;f1;f1;)".  Function not found.\n
WARNING # llrender/llshadermgr.cpp(435) LLShaderMgr::dumpObjectLog : Shader loading from Terrain Bake Shader RGB5
WARNING # llrender/llshadermgr.cpp(436) LLShaderMgr::dumpObjectLog : \nERROR: Undefined function call: "get_terrain_mix_weights(f1;f1;f1;)".  Function not found.\n
WARNING # llrender/llglslshader.cpp(464) LLGLSLShader::createShader : Failed to link shader: Terrain Bake Shader RGB5
WARNING # llrender/llglslshader.cpp(469) LLGLSLShader::createShader : Failed to link using shader level 1 trying again using shader level 0
WARNING # llrender/llglslshader.cpp(464) LLGLSLShader::createShader : Failed to link shader: Terrain Bake Shader RGB5
brad-linden commented 2 months ago
WARNING # llrender/llshadermgr.cpp(932) LLShaderMgr::linkProgramObject : GLSL Linker Error:
WARNING # llrender/llshadermgr.cpp(435) LLShaderMgr::dumpObjectLog : Shader loading from linker
WARNING # llrender/llshadermgr.cpp(436) LLShaderMgr::dumpObjectLog : \nERROR: Undefined function call: "srgb_to_linear(vf3;)".  Function not found.\n
WARNING # llrender/llshadermgr.cpp(435) LLShaderMgr::dumpObjectLog : Shader loading from Terrain Bake Shader RGB5
WARNING # llrender/llshadermgr.cpp(436) LLShaderMgr::dumpObjectLog : \nERROR: Undefined function call: "srgb_to_linear(vf3;)".  Function not found.\n
WARNING # llrender/llglslshader.cpp(469) LLGLSLShader::createShader : Failed to link using shader level 2 trying again using shader level 1
WARNING # llrender/llshadermgr.cpp(932) LLShaderMgr::linkProgramObject : GLSL Linker Error:
WARNING # llrender/llshadermgr.cpp(435) LLShaderMgr::dumpObjectLog : Shader loading from linker
WARNING # llrender/llshadermgr.cpp(436) LLShaderMgr::dumpObjectLog : \nERROR: Undefined function call: "get_terrain_mix_weights(f1;f1;f1;)".  Function not found.\n
WARNING # llrender/llshadermgr.cpp(435) LLShaderMgr::dumpObjectLog : Shader loading from Terrain Bake Shader RGB5
WARNING # llrender/llshadermgr.cpp(436) LLShaderMgr::dumpObjectLog : \nERROR: Undefined function call: "get_terrain_mix_weights(f1;f1;f1;)".  Function not found.\n
WARNING # llrender/llglslshader.cpp(464) LLGLSLShader::createShader : Failed to link shader: Terrain Bake Shader RGB5
WARNING # llrender/llglslshader.cpp(469) LLGLSLShader::createShader : Failed to link using shader level 1 trying again using shader level 0
WARNING # llrender/llglslshader.cpp(464) LLGLSLShader::createShader : Failed to link shader: Terrain Bake Shader RGB5

yes the failure to link cannot be fixed yet. this patch turns this into a non-fatal error since the particular shaders that are failing are only for new features behind a feature flag.

looking at the latest call stacks from last night's testing it appears that they are different. those call stacks look more like #2434

AtlasLinden commented 2 months ago

Setting back to In QA Please verify if this crash no longer occurs with a HD4000

igorlproductengine commented 2 months ago

Passed QA. Verified on the Second Life Release 7.1.10.10800445603 (64bit) on the Win10 in the scope of https://github.com/secondlife/iqa/issues/332.