Bug 321589

Summary: Automatic VSync strategy causes tearing
Product: [Plasma] kwin Reporter: Kai Uwe Broulik <kde>
Component: compositingAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: NOR    
Version: 4.10.80   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Supportinformation

Description Kai Uwe Broulik 2013-06-25 10:16:51 UTC
When using the Automatic VSync strategy of KWin, it causes tearing here on my i915.
When I use "Reuse screen contents" it's fine.

Automatic → Tearing
Only When Cheap → Tearing
Full Repaint → Ok
Reuse screen contents → Ok

Reproducible: Always
Comment 1 Kai Uwe Broulik 2013-06-25 10:17:16 UTC
Created attachment 80772 [details]
Supportinformation
Comment 2 Thomas Lübking 2013-06-25 11:48:36 UTC
Don't use "reuse screen content", it's extremely expensive on MESA drivers!
Pplease restart kwin after ever selecting "reuse screen contents" - expensive path in the driver won't be left otherwise.

Automatic will choose "Only when cheap" and that would only cover (near) full screen repaints.
-> Do you get tearing with automatic setting and (near) fullscreen updates, eg. fullscreen video playback?
Comment 3 Kai Uwe Broulik 2013-06-25 11:53:26 UTC
> Do you get tearing with automatic setting and (near) fullscreen updates, eg. fullscreen video playback?
No I don't but I get it when moving windows which annoys quite a bit.
So what else should I choose? Full repaint?
Comment 4 Martin Flöser 2013-06-25 12:03:55 UTC
> > Do you get tearing with automatic setting and (near) fullscreen updates,
> > eg. fullscreen video playback?
> No I don't but I get it when moving windows which annoys quite a bit.
> So what else should I choose? Full repaint?
Full repaint is quite heavy (I can hear my CPU fan when using it), but is 
absolutely tear free. With automatic I have tearing when scrolling in Firefox, 
for example.
Comment 5 Thomas Lübking 2013-06-25 12:10:56 UTC
Maximized firefox?

Also maximized <otherbrowser>?
(I recall a picture on a bug that indicated scrolling firefox to cause partial damage events on different frames)

@Kai
Always cheap vsyc will be available with buffer_age support, but not in 4.11.
https://git.reviewboard.kde.org/r/110642/
Comment 6 Martin Flöser 2013-06-25 12:33:30 UTC
> Maximized firefox?
no, I'm normally not using maximized browsers. Will try to observe
> 
> Also maximized <otherbrowser>?
> (I recall a picture on a bug that indicated scrolling firefox to cause
> partial damage events on different frames)
hmm, I will try to use some other browsers and observe
Comment 7 Kai Uwe Broulik 2013-06-25 12:36:12 UTC
Could no longer reproduce that horizontal tear line in the upper third of the browser window when scrolling
Comment 8 Thomas Lübking 2013-06-25 13:02:42 UTC
(In reply to comment #6)
> no, I'm normally not using maximized browsers. Will try to observe
The minimum ratio is at 74.8% of the screen (16:9 on a 4:3 screen) resp. 49% (2.55:1 on 5:4) for an opaque fullscreen window (videoplayer, worst thinkable case)

If the updated region is smaller, you'll get tearing unless you explicitly chose to always have fullscreen repaints. That's expected for the present strategies.
Comment 9 Thomas Lübking 2013-06-27 19:20:37 UTC

*** This bug has been marked as a duplicate of bug 319995 ***