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

Tearing with OpenGL on nvidia/X11/Linux

    XMLWordPrintable

Details

    • Bug
    • Resolution: Incomplete
    • Not Evaluated
    • None
    • 5.4.1
    • GUI: OpenGL
    • None

    Description

      This is probably a nvidia binary driver bug on Linux, triggered specifically by Qt code.

      I tested some random program, which uses glXChooseFBConfig with relatively standard attribute arguments. It selected this fb config (pasting the corrsponding line in glxinfo output):

      "0x0f5 24 tc 0 24 0 r y . 8 8 8 0 . s 4 24 0 16 16 16 16 0 0 None"

      No tearing in fullscreen.

      Qt on the other hand passes this to its last glXCreateContextAttribsARB call:

      "0x176 32 tc 0 32 0 r y . 8 8 8 8 . s 4 24 8 16 16 16 16 0 0 None"

      It tears heavily in fullscreen mode. I have confirmed that glXSwapIntervalEXT is called with the correct value on the correct drawable.

      I've also tried to make that other program output alpha, which happened to select this fbconfig:

      "0x17a 32 tc 0 32 0 r y . 8 8 8 8 . s 4 24 0 16 16 16 16 0 0 None"

      This also teared in fullscreen mode. The program uses some quite hacky code to end up with this specific fbconfig, though.

      It's actually pretty obvious that this is a nvidia bug, but I thought I'd report it anyway, since it's specifically triggered by Qt with default settings. Other users might experience the same.

      This happens with a QQuickWindow (actually a class derived from it, and created with QQmlApplicationEngine).

      nvidia drivers 340.76 on GeForce 8500 GT, but could produce it with 2 other people having a quite different setup and newer drivers and hardware.

      Attachments

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

        Activity

          People

            sletta Gunnar Sletta
            wm4 full name
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes