D23881: Possible solution for scheduling repaints on NVIDIA

Fredrik Höglund <[email protected]>
Newsgroups gmane.comp.kde.devel.kwin
Message-ID <[email protected]>
fredrik created this revision.
fredrik added reviewers: KWin, ngraham.
Herald added a project: KWin.
Herald added a subscriber: kwin.
fredrik requested review of this revision.

REVISION SUMMARY
  We keep setting __GL_MaxFramesAllowed to 1, but move the blocking glXSwapBuffers() call to a separate thread and synthesize a swap event by emitting a signal when the call returns.
  
  This way we can call glXSwapBuffers() at any point within the swap interval without blocking the main thread, and we can use the same scheduling code with all drivers.

TEST PLAN
  Compile tested only.

REPOSITORY
  R108 KWin

REVISION DETAIL
  https://phabricator.kde.org/D23881

AFFECTED FILES
  plugins/platforms/x11/standalone/glxbackend.cpp
  plugins/platforms/x11/standalone/glxbackend.h

To: fredrik, #kwin, ngraham
Cc: kwin, LeGast00n, The-Feren-OS-Dev, sbergeron, jraleigh, fbampaloukas, GB_2, mkulinski, ragreen, jackyalcine, Pitel, iodelay, crozbo, bwowk, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, hardening, romangg, jensreuterberg, abetts, sebas, apol, mart
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.