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

QLocation regression in 5.15.10: Map completely and immediately freezes user interface

    XMLWordPrintable

Details

    • Android, Linux/X11, Windows

    Description

      It's enough to launch Examples/Qt-5.15.10/location/mapviewer/ example on Linux Desktop or Android, and application completely freezes, though it manages to draw interface (at least?) once.

      This does not reproduce with 5.15.9.

      Main thread backgrace:

                                                                                                          
                                                                                                          
      1   futex_wait_cancelable                            futex-internal.h           186  0x7ffff607a7b2 
      2   __pthread_cond_wait_common                       pthread_cond_wait.c        508  0x7ffff607a7b2 
      3   __pthread_cond_wait                              pthread_cond_wait.c        638  0x7ffff607a7b2 
      4   QWaitConditionPrivate::wait                      qwaitcondition_unix.cpp    146  0x7ffff651ff63 
      5   QWaitCondition::wait                             qwaitcondition_unix.cpp    225  0x7ffff651ff63 
      6   QSGThreadedRenderLoop::polishAndSync             qsgthreadedrenderloop.cpp  1603 0x7fffeb5d35d6 
      7   QSGThreadedRenderLoop::handleExposure            qsgthreadedrenderloop.cpp  1374 0x7fffeb5d54e8 
      8   QSGThreadedRenderLoop::exposureChanged           qsgthreadedrenderloop.cpp  1268 0x7fffeb5d5a30 
      9   QWindow::event                                   qwindow.cpp                2455 0x7ffff780fe5b 
      10  QQuickWindow::event                              qquickwindow.cpp           1909 0x7fffeb637579 
      11  QCoreApplication::notifyInternal2                qcoreapplication.cpp       1064 0x7ffff6704648 
      12  QCoreApplication::sendSpontaneousEvent           qcoreapplication.cpp       1474 0x7ffff670480e 
      13  QGuiApplicationPrivate::processExposeEvent       qguiapplication.cpp        3261 0x7ffff780629f 
      14  QGuiApplicationPrivate::processWindowSystemEvent qguiapplication.cpp        2073 0x7ffff78064dd 
      15  QWindowSystemInterface::sendWindowSystemEvents   qwindowsysteminterface.cpp 1169 0x7ffff77e1e2b 
      16  xcbSourceDispatch                                qxcbeventdispatcher.cpp    105  0x7ffff2c8a58a 
      17  g_main_context_dispatch                                                          0x7ffff3b04e6b 
      18  ??                                                                               0x7ffff3b05118 
      19  g_main_context_iteration                                                         0x7ffff3b051cf 
      20  QEventDispatcherGlib::processEvents              qeventdispatcher_glib.cpp  423  0x7ffff675fe2c 
      ... <More>                                                                                          
      
      

      It seems main thread is stuck in QSGThreadedRenderLoop::polishAndSync

      While QSGRenderThread seems working somewhere inside QSGBatchRenderer::Renderer::render

                                                                                                           
                                                                                                           
      1   QHash<QSGNode *, QSGBatchRenderer::Node *>::findNode    qhash.h              928  0x7fffeb5760a9 
      2   QHash<QSGNode *, QSGBatchRenderer::Node *>::findNode    qhash.h              950  0x7fffeb57611b 
      3   QHash<QSGNode *, QSGBatchRenderer::Node *>::value       qhash.h              656  0x7fffeb562403 
      4   QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1615 0x7fffeb562403 
      5   QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1646 0x7fffeb5623bb 
      6   QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1662 0x7fffeb562513 
      7   QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1646 0x7fffeb5623bb 
      8   QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1662 0x7fffeb562513 
      9   QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1662 0x7fffeb562513 
      10  QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1662 0x7fffeb562513 
      11  QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1662 0x7fffeb562513 
      12  QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1662 0x7fffeb562513 
      13  QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1662 0x7fffeb562513 
      14  QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1662 0x7fffeb562513 
      15  QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1662 0x7fffeb562513 
      16  QSGBatchRenderer::Renderer::buildRenderLists            qsgbatchrenderer.cpp 1662 0x7fffeb562513 
      17  QSGBatchRenderer::Renderer::buildRenderListsFromScratch qsgbatchrenderer.cpp 1789 0x7fffeb5627af 
      18  QSGBatchRenderer::Renderer::render                      qsgbatchrenderer.cpp 4265 0x7fffeb57281d 
      19  QSGRenderer::renderScene                                qsgrenderer.cpp      264  0x7fffeb55ad63 
      20  QSGRenderer::renderScene                                qsgrenderer.cpp      212  0x7fffeb55b257 
      ... <More>                                                                                           
      
      

      Originally I've discovered it with here plugin, but it's the same with osm plugin as in mapviewer example.

      Attachments

        1. 83b6adf.diff.zip
          0.7 kB
          Volker Hilsheimer

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              paangele Paolo Angelelli
              vdargis_at_uab_styritrade Vincas Dargis
              Votes:
              9 Vote for this issue
              Watchers:
              15 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes