Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-99722

OpenGL driver crashes on Android armeabi-v7a (Mali, Adreno) with Qt 5

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • 5.15.2
    • GUI: OpenGL
    • Samsung Galaxy Active Tab 3 (T575) Android 11

    Description

      While displaying maps (OSM Plugin) in QML with RHI enabled with

      qputenv("QSG_RHI", "1")
      

      on Samsung Galaxy Active Tab 3 (T575) Android 11
      after some time crash (SIGEGV) is triggered.

      Minimal example can be reproduced with:
      Qt 5.15.2 configured with opengl=es2
      NDK Version: 21.3.6528147
      SDK Version: 5.0
      android-arch: armeabi-v7a

      main.cpp:

      #include <QGuiApplication>
      #include <QQmlApplicationEngine>
      
      int main(int argc, char* argv[]) {
        qputenv("QSG_RHI", "1");  
        QGuiApplication app(argc, argv);  
        QQmlApplicationEngine engine;
        engine.load(QUrl(QStringLiteral("qrc:/main.qml")));  
        return app.exec();
      }
      

      main.qml:

      import QtQuick 2.15
      import QtQuick.Window 2.15
      import QtQuick.Controls 2.15
      import QtLocation 5.15
      import QtPositioning 5.15
      Window {
          visible: true    
          Page {
              id: root
              anchors.fill: parent        
                  Map {
                  id: map
                  plugin: mapPlugin
                  anchors.fill: parent
                  anchors.bottomMargin: 0
                  anchors.leftMargin: 0
                  maximumZoomLevel: 17
                  minimumZoomLevel: 11
                  zoomLevel: 11
                  bearing: 0
                  tilt: 0
                  gesture.enabled: true
                  copyrightsVisible: false
                  center: QtPositioning.coordinate(56.92, 23.98) // Riga airport
                  gesture.acceptedGestures: MapGestureArea.PanGesture | MapGestureArea.PinchGesture            
                  Plugin {
                      id: mapPlugin
                      name: "osm"                
                  }            
                  SequentialAnimation on center {
                      loops: Animation.Infinite
                      running: true                
                      CoordinateAnimation {
                          id: right
                          duration: 5000
                          from: QtPositioning.coordinate(56.92, 23.98) // Riga airport
                          to: QtPositioning.coordinate(57.07, 24.41) // Garkalne
                      }                
                      CoordinateAnimation {
                          id: left
                          duration: 5000
                          from: QtPositioning.coordinate(57.07, 24.41) // Garkalne
                          to: QtPositioning.coordinate(56.92, 23.98) // Riga airport
                      }
                      ScriptAction {
                          script: map.zoomLevel = (map.zoomLevel + 1) > map.maximumZoomLevel ? map.minimumZoomLevel : map.zoomLevel + 1
                      }
                  }
              }
          }
      }
      

       minimal_map.pro:

      TEMPLATE = app
      
      QT += location androidextras
      
      SOURCES += main.cpp
      
      RESOURCES += qml.qrc
      
      target.path = $$[QT_INSTALL_EXAMPLES]/location/minimal_map
      INSTALLS += target
      
      

      qml.qrc:

      <RCC>
          <qresource prefix="/">
              <file>main.qml</file>
          </qresource>
      </RCC>
      

      Logcat crash:

      Logcat

      01-04 19:31:38.316 1662 3476 F libc : Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x67b2925c in tid 3476 (QtThread), pid 1662 (ple.minimal_map)
      01-04 19:31:38.407 3625 3625 I crash_dump32: obtaining output fd from tombstoned, type: kDebuggerdTombstone
      01-04 19:31:38.408 656 656 I tombstoned: received crash request for pid 3476
      01-04 19:31:38.410 3625 3625 I crash_dump32: performing dump of process 1662 (target tid = 3476)
      01-04 19:31:38.429 3625 3625 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
      01-04 19:31:38.429 3625 3625 F DEBUG : Build fingerprint: 'samsung/gtactive3eea/gtactive3:11/RP1A.200720.012/T575XXU3BUJ1:user/release-keys'01-04 19:31:38.429 3625 3625 F DEBUG : Revision: '4'01-04 19:31:38.429 3625 3625 F DEBUG : ABI: 'arm'01-04 19:31:38.429 3625 3625 F DEBUG : Processor: '6'01-04 19:31:38.430 3625 3625 F DEBUG : Timestamp: 2022-01-04 19:31:38+0100
      01-04 19:31:38.430 3625 3625 F DEBUG : pid: 1662, tid: 3476, name: QtThread >>> org.qtproject.example.minimal_map <<<
      01-04 19:31:38.430 3625 3625 F DEBUG : uid: 10324
      01-04 19:31:38.430 3625 3625 F DEBUG : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x67b2925c
      01-04 19:31:38.430 3625 3625 F DEBUG : r0 00000001 r1 00000001 r2 00000001 r3 00000000
      01-04 19:31:38.430 3625 3625 F DEBUG : r4 b2319800 r5 00000001 r6 b2319bf0 r7 b2e99100
      01-04 19:31:38.430 3625 3625 F DEBUG : r8 67b2925c r9 00000000 r10 b0866800 r11 00000000
      01-04 19:31:38.430 3625 3625 F DEBUG : ip 00000001 sp b2e990a8 lr c5a03ed3 pc c5a04152
      01-04 19:31:38.433 3625 3625 F DEBUG : backtrace:
      01-04 19:31:38.433 3625 3625 F DEBUG : #00 pc 005a2152 /vendor/lib/egl/libGLES_mali.so (BuildId: 5e525382ca012e587aec9d4f6faba38b)
      01-04 19:31:38.433 3625 3625 F DEBUG : #01 pc 005a3473 /vendor/lib/egl/libGLES_mali.so (BuildId: 5e525382ca012e587aec9d4f6faba38b)
      01-04 19:31:38.433 3625 3625 F DEBUG : #02 pc 00572e47 /vendor/lib/egl/libGLES_mali.so (BuildId: 5e525382ca012e587aec9d4f6faba38b)
      01-04 19:31:38.433 3625 3625 F DEBUG : #03 pc 0059d7e1 /vendor/lib/egl/libGLES_mali.so (BuildId: 5e525382ca012e587aec9d4f6faba38b)
      01-04 19:31:38.433 3625 3625 F DEBUG : #04 pc 0059bedd /vendor/lib/egl/libGLES_mali.so (BuildId: 5e525382ca012e587aec9d4f6faba38b)
      01-04 19:31:38.434 3625 3625 F DEBUG : #05 pc 005670f3 /vendor/lib/egl/libGLES_mali.so (glBindTexture+24) (BuildId: 5e525382ca012e587aec9d4f6faba38b)
      01-04 19:31:38.434 3625 3625 F DEBUG : #06 pc 0051b8c8 /data/app/~~zyTLFtFqWa3JqA4K4oZmeA==/org.qtproject.example.minimal_map-nFilMQhRoVvdQNYvegrqeA==/lib/arm/libQt5Gui_armeabi-v7a.so (BuildId: b8a9c654b6537ec5dc3f36f5d66b072ca79d79b1)

      Attachments

        1. tombstone_21
          458 kB
        2. minimal_map_crash_logcat.txt
          1.20 MB
        3. bugreport.zip
          15.50 MB

        Activity

          People

            qt.team.graphics.and.multimedia Qt Graphics Team
            skozbial Szymon Koźbiał
            Votes:
            2 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: