Bug 339484 - automatically suspend compositing if GL_MAX_TEXTURE_SIZE < GL_MAX_VIEWPORT_DIMS ~ actual viewport dimensions
Summary: automatically suspend compositing if GL_MAX_TEXTURE_SIZE < GL_MAX_VIEWPORT_DI...
Status: RESOLVED UNMAINTAINED
Alias: None
Product: kwin
Classification: Plasma
Component: compositing (other bugs)
Version First Reported In: 4.11.11
Platform: Ubuntu Linux
: NOR wishlist
Target Milestone: 5
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-09-28 19:33 UTC by Elmar Stellnberger (AT/K)
Modified: 2023-05-07 12:52 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Elmar Stellnberger (AT/K) 2014-09-28 19:33:12 UTC
KWin is very copious about what happens at me if I arrange my integrated screen (1024x600) left of my external screen (1920x1200):

"OpenGl desktop effects are supported at the current resolution but may be extremly slow. Moreoever big windows will be displayed entirely black (did not test for this). Think about switching off compositing, use the xrender backend or change the resolution to 2048x2048."
"Due to technical reasons it may not be possible to detect all causes of errors. The desired resoltion exceeds the GL_MAX_TEXTURE_SIZE of your GPU so that no textures can be applied for windows of this size and they will be displayed entirely black. This limit usually also limits the performance  though the resolution is below GL_MAX_VIEWPORT_DIMS because the device driver uses software rendering instead."

  In deed the new resolution had a heavy impact on performance. It took me about 10 minutes just to switch the resoltion back on an Intel Atom CPU. However when I reactivated the full resolution with xrender instead of opengl 2.0 everything was working fine.
  My proposal would be to switch to xrender automatically in such a case and thereafter prompt the user for the given reasons so that adventurous users can still try software rendering on their own. Doing so may avoid some frustration because xrender is known to work in many settings where OpenGL can cause trouble.



Reproducible: Always
Comment 1 Elmar Stellnberger (AT/K) 2014-09-28 19:35:28 UTC
Good work also by the Xorg team besides this little issue!
Screen 0: i915 (xdriinfo) seems pretty well supported especially recently.
Comment 2 Martin Flöser 2014-10-06 09:43:49 UTC
Thanks for your suggestion. I have to admit it sounds reasonable, nevertheless I'm switching this bug to wontfix. The reason is that we would also have to switch back to OpenGL once a resolution is set up again. This would be rather difficult as we would have to track the screen size changes (over system restarts) and try to re-enable OpenGL to test the sizes. Combined with no chances to test this, it is a daring project.
Comment 3 Thomas Lübking 2014-10-06 12:25:51 UTC
My idea would have been to autosuspend to get the system responsive for sure (XRender may "fail" as well), but that means that if the user really wants to use GL compositing on this setup (might still be ok eg. on multiscreen setups), he'd have to resume it after every KWin start.

=> we'd need a "don't do that again" key for this (and to alter the message)
==> KWin 5?
Comment 4 Martin Flöser 2014-10-06 12:31:04 UTC
that might be a solution. Maybe not a key binding, but rather a dialog window, with a "don't ask me again" checkbox.
Comment 5 Thomas Lübking 2014-10-06 12:32:37 UTC
That's what I meant - requires an additional config "key" ;-)
Comment 6 Zamundaaa 2023-05-07 12:52:18 UTC
I don't think this is relevant in Plasma 5