View Issue Details

IDProjectCategoryView StatusLast Update
0032435CommunityOCCT:Visualizationpublic2021-09-09 21:31
ReporterVico Liang Assigned Tokgv  
PrioritynormalSeveritycrash 
Status newResolutionopen 
PlatformAndroid 
Product Version7.5.2 
Target Version7.7.0 
Summary0032435: Visualization, TKOpenGles - crash inside Opengl ES on Adreno 506 android devices
DescriptionLatest updated to OCCT7.5.2, New crash from google play console. It seems the crash inside opengl es. The stacktrace as below:

Affected device:
Samsung Galaxy A20s, Android 10 (SDK 29)
Xiaomi Redmi 7, Android 10 (SDK 29)


  #00 pc 000000000007f338 /apex/com.android.runtime/lib64/bionic/libc.so (__memcpy+296)
  #00 pc 00000000001c19c8 /vendor/lib64/egl/libGLESv2_adreno.so
  #00 pc 000000000037d098 /vendor/lib64/egl/libGLESv2_adreno.so
  #00 pc 000000000034dde8 /vendor/lib64/egl/libGLESv2_adreno.so
  #00 pc 000000000033ad90 /vendor/lib64/egl/libGLESv2_adreno.so
  #00 pc 0000000000102680 /vendor/lib64/egl/libGLESv2_adreno.so
  #00 pc 00000000000fbdb4 /vendor/lib64/egl/libGLESv2_adreno.so
  #00 pc 00000000013e2a28 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_PrimitiveArray::drawArray(opencascade::handle<OpenGl_Workspace> const&, NCollection_Vec4<float> const*, bool) const+436)
  #00 pc 00000000013e413c /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_PrimitiveArray::Render(opencascade::handle<OpenGl_Workspace> const&) const+1804)
  #00 pc 00000000013e07b0 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_Group::Render(opencascade::handle<OpenGl_Workspace> const&) const+212)
  #00 pc 0000000001395608 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_Structure::renderGeometry(opencascade::handle<OpenGl_Workspace> const&, bool&) const+108)
  #00 pc 0000000001395bb8 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_Structure::Render(opencascade::handle<OpenGl_Workspace> const&) const+1428)
  #00 pc 00000000013cc594 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_LayerList::renderLayer(opencascade::handle<OpenGl_Workspace> const&, OpenGl_GlobalLayerSettings const&, Graphic3d_Layer const&) const+988)
  #00 pc 00000000013cccec /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_LayerList::Render(opencascade::handle<OpenGl_Workspace> const&, bool, OpenGl_LayerFilter, OpenGl_FrameBuffer*, OpenGl_FrameBuffer*) const+1116)
  #00 pc 00000000013ab534 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_View::renderStructs(Graphic3d_Camera::Projection, OpenGl_FrameBuffer*, OpenGl_FrameBuffer*, bool)+276)
  #00 pc 00000000013ab7a8 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_View::renderScene(Graphic3d_Camera::Projection, OpenGl_FrameBuffer*, OpenGl_FrameBuffer*, bool)+140)
  #00 pc 00000000013ab0c4 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_View::render(Graphic3d_Camera::Projection, OpenGl_FrameBuffer*, OpenGl_FrameBuffer*, bool)+1096)
  #00 pc 00000000013aa850 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_View::redraw(Graphic3d_Camera::Projection, OpenGl_FrameBuffer*, OpenGl_FrameBuffer*)+556)
  #00 pc 00000000013a8430 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (OpenGl_View::Redraw()+1408)
  #00 pc 00000000013eddc4 /data/app/com.xxx.xxx-ooz-Ljm7v4ASv-_zr9VF5Q==/lib/arm64/libXXX_arm64-v8a.so (V3d_View::Redraw() const+108)



  #00 pc 000000000005d15c /apex/com.android.runtime/lib/bionic/libc.so (__memcpy_a53+108)
  #00 pc 00000000002327a5 /vendor/lib/egl/libGLESv2_adreno.so
  #00 pc 000000000020dde1 /vendor/lib/egl/libGLESv2_adreno.so
  #00 pc 00000000000827ab /vendor/lib/egl/libGLESv2_adreno.so
  #00 pc 000000000007cd8f /vendor/lib/egl/libGLESv2_adreno.so
  #00 pc 00000000000b26ef /vendor/lib/egl/libGLESv2_adreno.so
  #00 pc 0000000000053bcf /vendor/lib/egl/libGLESv2_adreno.so (glDrawElements+42)
  #00 pc 0000000000f524e3 /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_PrimitiveArray::drawArray(opencascade::handle<OpenGl_Workspace> const&, NCollection_Vec4<float> const*, bool) const+274)
  #00 pc 0000000000f53043 /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_PrimitiveArray::Render(opencascade::handle<OpenGl_Workspace> const&) const+858)
  #00 pc 0000000000f50f25 /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_Group::renderFiltered(opencascade::handle<OpenGl_Workspace> const&, OpenGl_Element*) const+28)
  #00 pc 0000000000f50f81 /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_Group::Render(opencascade::handle<OpenGl_Workspace> const&) const+82)
  #00 pc 0000000000f16087 /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_Structure::renderGeometry(opencascade::handle<OpenGl_Workspace> const&, bool&) const+62)
  #00 pc 0000000000f1634d /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_Structure::Render(opencascade::handle<OpenGl_Workspace> const&) const+696)
  #00 pc 0000000000f4593b /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_LayerList::renderLayer(opencascade::handle<OpenGl_Workspace> const&, OpenGl_GlobalLayerSettings const&, Graphic3d_Layer const&) const+646)
  #00 pc 0000000000f45d23 /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_LayerList::Render(opencascade::handle<OpenGl_Workspace> const&, bool, OpenGl_LayerFilter, OpenGl_FrameBuffer*, OpenGl_FrameBuffer*) const+618)
  #00 pc 0000000000f3335b /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_View::renderStructs(Graphic3d_Camera::Projection, OpenGl_FrameBuffer*, OpenGl_FrameBuffer*, bool)+178)
  #00 pc 0000000000f334eb /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_View::renderScene(Graphic3d_Camera::Projection, OpenGl_FrameBuffer*, OpenGl_FrameBuffer*, bool)+90)
  #00 pc 0000000000f33155 /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_View::render(Graphic3d_Camera::Projection, OpenGl_FrameBuffer*, OpenGl_FrameBuffer*, bool)+744)
  #00 pc 0000000000f32bbb /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_View::redraw(Graphic3d_Camera::Projection, OpenGl_FrameBuffer*, OpenGl_FrameBuffer*)+242)
  #00 pc 0000000000f31689 /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (OpenGl_View::Redraw()+936)
  #00 pc 0000000000f576eb /data/app/com.xxx.xxx-V7Crmc2bF-thoA4so3Q7ag==/lib/arm/libXXX_armeabi-v7a.so (V3d_View::Redraw() const+94)
TagsNo tags attached.
Test case number

Relationships

related to 0032504 newkgv Visualization, TKOpenGles - Crash inside drawArray on android platform 

Activities

kgv

2021-06-11 15:59

developer   ~0101785

Unfortunately, this stack trace will not help to identify the problem cause.

Vico Liang

2021-06-11 17:24

developer   ~0101790

Dear Kirill, QOpenGLFramebufferObject was wrapped as OpenGl_FrameBuffer, do you think it might be the cause?

kgv

2021-06-15 15:57

developer   ~0101842

Broken wrapping of QOpenGLFramebufferObject into OpenGl_FrameBuffer might cause issues (for example, if gluing layer in application code doesn't update OpenGl_FrameBuffer after QOpenGLFramebufferObject modifications), but the problem origin couldn't be trivially determined from currently available information.

The crash happens inside OpenGL ES driver, and the reason could be very different (up to the bug within the driver itself, triggered by a combination of many factors).

OpenGl_Caps::contextDebug=true + QSurfaceFormat.setOption(QSurfaceFormat::DebugContext) + verbose log might give a better idea if OpenGL is misused somewhere, but this is possible only if you have a device and reproducible crash scenario at hand.

Issue History

Date Modified Username Field Change
2021-06-11 15:12 Vico Liang New Issue
2021-06-11 15:12 Vico Liang Assigned To => kgv
2021-06-11 15:16 Vico Liang Description Updated
2021-06-11 15:58 kgv Summary Crash inside opengl es on some android device => Visualization, TKOpenGles - crash inside Opengl ES on Adreno 506 android devices
2021-06-11 15:59 kgv Note Added: 0101785
2021-06-11 17:24 Vico Liang Note Added: 0101790
2021-06-15 15:57 kgv Note Added: 0101842
2021-08-24 14:30 kgv Relationship added related to 0032504
2021-09-09 21:31 kgv Target Version 7.6.0 => 7.7.0