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

macOS: kernel panics with disabled v-sync

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: P1: Critical P1: Critical
    • None
    • 6.8.4
    • QPA, Qt RHI
    • None
    • macOS Sequoia / Tahoe (might happen with an earlier release as well)
      Apple M1/2/3/4 Max or Ultra (supporting 120Hz)
      External Display at 120Hz or higher
    • macOS

      The UI of our C++ applications and plugins is typically very complex and bitmap based (rendered to texture), that's why we have the vertical sync feature of the QWindow turned off since the very beginning (see https://doc.qt.io/qt-6.8/qsurfaceformat.html#setSwapInterval). 

      It appears, that with the introduction of more recent macOS display drivers and faster external displays, the non-synced operation has become unstable, in a way that it has become fatal for the customers with the respective high-end gear.

      Repro:

      • More recent macOS (Sequoia+), running on Max or Ultra class M-chip
      • High-resolution display running at 120Hz+, highest resolution
      • Start provided application built from provided code (with V-Sync disabled)
      • Drag application's window to external screen's top-left position

      Observation:

      • System will get unresponsive and reboot
      • After restart, log with kernel panic message is shown

      Expectation:

      • No crashes

      Attachments:

      • Kernel Panic log
      • Minimal source code (please be aware of the `DISABLE_VSYNC` cmake option!)

      Notes:

      • We have this issue also filed with Apple under 16376349

        1. kernel-panic.txt
          70 kB
          Stefan Wastl
        2. qt-kernel-panic-repro-1.zip
          5 kB
          Stefan Wastl
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            vestbo Tor Arne Vestbø
            stefan.wastl Stefan Wastl
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:

                There are no open Gerrit changes