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

QtQuick aborts on OpenGL context creation failure

    XMLWordPrintable

Details

    • Suggestion
    • Resolution: Won't Do
    • Not Evaluated
    • None
    • 5.9.1
    • None
    • Kubuntu 17.10 x86_64, X.org, Nvidia driver 390.48. The problem appears on upgrading/downgrading different versions of Nvidia driver.

    Description

      ksmserver is a KDE component which, in particular, presents the logout/reboot UI to the user. Apparently, it uses QtQuick to render that UI.

      If the user updates or downgrades Nvidia driver and then attempts to reboot, the ksmserver process crashes (see the backtrace attached), which basically makes it impossible for the user to reboot the system, except by killing the X server.

      Presumably, the reason of the crash is that the userspace components of the Nvidia driver (the OpenGL library) performs an ABI check against the currently loaded kernel module, which stays the old version after the update. Because the ABI check fails, the OpenGL driver fails to create an OpenGL context, on which QtQuick aborts.

      There is a discussion on Nvidia forum about this problem in this thread:

      https://devtalk.nvidia.com/default/topic/1031836/linux/opengl-context-cannot-be-created-after-nvidia-driver-update-cannot-reboot-the-system/

      However, I think aborting the application on failure to create OpenGL context (regardless of the Nvidia specifics) is not the correct behavior. I would rather prefer Qt to fallback to software rendering in this case. If that's not possible, at least reporting the failure to the application instead of crashing seems better.

      The relevant KDE bug is here:

      https://bugs.kde.org/show_bug.cgi?id=364593

      Attachments

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

        Activity

          People

            janichol Andy Nichols
            lastique Andrey Semashev
            Votes:
            4 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes