Question by
cdj77 · Feb 11, 2018 at 07:41 AM ·
crashopengllibunity.so
unity crash when invoke open gl api GlDrawArrays
We have gathered some crashes in our living environment, we cannot reproduce this crash, below is the backtrace, If this is a gpu driver bug, how can we workaround this ? any suggestion will be appreciated.
Unity version: 5.5.4f1 crashed devices: OPPO A57, OPPO A57t, OPPO R9s, vivo X7, vivo X7Plus, MI NOTE Pro, OPPO R9 Plusm A, OPPO R9st... OS Version: Android 5.x 6.x
#00 0x000176a4: /system/lib/libc.so (__memcpy_base+88)
#01 0x00107ef1: /system/vendor/lib/egl/libESXGLESv2_adreno.so (_ZN20EsxVertexArrayObject18UpdateInternalVbosEPK17EsxDrawDescriptorjPK16EsxAttributeDesc+1168)
#02 0x001bd3bf: /system/vendor/lib/egl/libESXGLESv2_adreno.so (_ZN20A5xVertexArrayObject11CalcVfdRegsEPK17EsxDrawDescriptorP10A5xVfdRegsi+94)
#03 0x001c3ddf: /system/vendor/lib/egl/libESXGLESv2_adreno.so (_ZN10A5xContext16ValidateVfdStateEPK17EsxDrawDescriptori+30)
#04 0x001d2459: /system/vendor/lib/egl/libESXGLESv2_adreno.so (_ZN10A5xContext13ValidateStateEPK17EsxDrawDescriptor+2072)
#05 0x001d27e5: /system/vendor/lib/egl/libESXGLESv2_adreno.so (_ZN10A5xContext18HwValidateGfxStateEPK17EsxDrawDescriptor+4)
#06 0x000bb857: /system/vendor/lib/egl/libESXGLESv2_adreno.so (_ZN10EsxContext16ValidateGfxStateEPK17EsxDrawDescriptor+598)
#07 0x000b050f: /system/vendor/lib/egl/libESXGLESv2_adreno.so (_ZN10EsxContext19DrawArraysInstancedE11EsxPrimTypeijj+110)
#08 0x0009a8ff: /system/vendor/lib/egl/libESXGLESv2_adreno.so (_ZN10EsxContext12GlDrawArraysEjii+62)
#09 0x005146e8: GfxDeviceGLES::DrawBuffers(GfxBuffer*, VertexStreamSource const*, int, DrawBuffersRange const*, int, VertexDeclaration*, ChannelAssigns const&) at ??:?
#10 0x002648e4: GenericDynamicVBO::DrawChunkInternal(DynamicVBOChunkHandle const&, ChannelAssigns const&, unsigned int, VertexDeclaration*, DrawBuffersRange*, int, unsigned int) at ??:?
#11 0x00263a50: DynamicVBO::DrawChunk(DynamicVBOChunkHandle const&, ChannelAssigns const&, unsigned int, VertexDeclaration*, DynamicVBO::DrawParams const*, int) at ??:?
#12 0x00459c64: RenderDynamicBatch(GfxDevice&, RenderNodeQueue const&, BatchInstanceData const*, unsigned int, unsigned int, unsigned int, ChannelAssigns const&, unsigned int, VertexChannelsLayout const&, GfxPrimitiveType) at ??:?
#13 0x00458444: RenderMultipleMeshes(RenderNodeQueue const&, RenderMultipleData const&, ChannelAssigns const&) at ??:?
#14 0x001925f0: BatchRenderer::RenderBatch(BatchInstanceData const*, unsigned int, ChannelAssigns const&) at ??:?
#15 0x0019b7b8: ForwardRenderLoopJob(GfxDeviceAsyncCommand::ArgScratch*, GfxDeviceAsyncCommand::Arg const*) at ??:?
#16 0x0045fe48: GfxDevice::ExecuteAsync(int, void (*)(GfxDeviceAsyncCommand::ArgScratch*, GfxDeviceAsyncCommand::Arg const*), GfxDeviceAsyncCommand::ArgScratch**, GfxDeviceAsyncCommand::Arg const*, JobFence&) at ??:?
#17 0x0019a320: ForwardShaderRenderLoop::StartRenderJobs(JobFence&, bool, ShaderPassContext&) at ??:?
#18 0x0019bb14: ForwardShaderRenderLoop::PerformRendering(JobFence&, ActiveLight const*, ShadowJobData const&, bool, bool, bool, Camera::RenderFlag) at ??:?
#19 0x0019cac0: DoForwardShaderRenderLoop(RenderLoopContext&, dynamic_array&, CullResults const&, bool, bool, bool, Camera::RenderFlag) at ??:?
#20 0x001a388c: DoRenderLoop(RenderLoop&, RenderingPath, CullResults&, ShadowMapCache&, bool) at ??:?
#21 0x00125df4: Camera::DoRender(CullResults&, SharedRendererScene const&, Camera::RenderFlag, void (*)(Camera&, RenderLoop&, RenderNodeQueue const&), RenderNodeQueue const*) at ??:?
#22 0x001283c4: Camera::Render(CullResults&, ShaderPassContext&, CameraRenderingParams const*, Camera::RenderFlag, void*) at ??:?
#23 0x001495d8: RenderManager::RenderOffscreenCameras() at ??:?
#24 0x002e834c: PlayerRender(bool) at ??:?
#25 0x002e9cfc: PlayerLoop() at ??:?
#26 0x005421ac: UnityPlayerLoop() at ??:?
#27 0x0054499c: nativeRender(_JNIEnv*, _jobject*) at ??:?
#28 0x00562fa9: /data/app/com.xxxx.xxxxxx-1/oat/arm/base.odex
>>> java backtrace <<<
"UnityMain":
com.unity3d.player.UnityPlayer.nativeRender(null:-2)
com.unity3d.player.UnityPlayer.a(null:-1)
com.unity3d.player.UnityPlayer$c$1.handleMessage(null:-1)
android.os.Handler.dispatchMessage(Handler.java:98)
android.os.Looper.loop(Looper.java:179)
com.unity3d.player.UnityPlayer$c.run(null:-1)
Comment
Your answer

Follow this Question
Related Questions
Unity Crash On Android, ,Unity Crash on Android, signal 6 (SIGABRT), code -6 (SI_TKILL) 0 Answers
signal 5 (SIGTRAP), code 1 (TRAP_BRKPT) 0 Answers
HTC Vive Pro crashes Unity, Steam VR reads "(unresponsive) Unity.exe" 0 Answers
Random Crashes (SIGSEGV) on Android Huawei devices - (maybe linked to AssetBundles and/or Textures) 2 Answers
unity games wont start! 0 Answers