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

Multi-screen application on eglfs blocks in QEglFSKmsGbmScreen::waitForFlip when atomic drm is enabled

    XMLWordPrintable

Details

    • Linux/Wayland

    Description

      We have a multiview wayland compositor application based on solution provided by this article (https://blog.qt.io/blog/2016/09/19/qt-graphics-with-multiple-displays-on-embedded-linux/)

      We have multidisplay setup (4 displays), so every view have it's own screen to render.

      We have wayland client hiden in our main screen view and other wayland client on secondary screen view.

      We faced a problem caused by deadlock of our application. We were doing some swiping on our main screen view and one of the rendering threads stucked in QEglFSKmsGbmScreen::waitForFlip after calling QEglFSContext::swapBuffers. Main thread is waiting for sync with that thread and never continues execution.

      We already tried to apply last patches from this bug: https://bugreports.qt.io/browse/QTBUG-69077 (https://codereview.qt-project.org/#/c/255244/ and https://codereview.qt-project.org/#/c/251380/4). However the problem still exists.

      We don't have minimal sample app for this situation right now, so just highlighting this issue with generated coredump stacktrace.

      Update: Looks like problem not related to wayland module. It seems like the problem somethere inside eglfs plugin. Uploaded archive with testing sample and additional logs.

      Attachments

        Issue Links

          For Gerrit Dashboard: QTBUG-74953
          # Subject Branch Project Status CR V

          Activity

            People

              lagocs Laszlo Agocs
              nkrasnoyarov NIKITA KRASNOYAROV
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes