Bug 19169 - Tearing at top with multiple opengl windows on intel hardware
Summary: Tearing at top with multiple opengl windows on intel hardware
Alias: None
Product: DRI
Classification: Unclassified
Component: General (show other bugs)
Version: XOrg git
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Default DRI bug account
QA Contact:
Depends on:
Reported: 2008-12-18 16:57 UTC by peter garrone
Modified: 2019-10-14 13:20 UTC (History)
0 users

See Also:
i915 platform:
i915 features:

Patch to glxgears that adds a teartest. (2.64 KB, patch)
2008-12-18 16:57 UTC, peter garrone
no flags Details | Splinter Review

Description peter garrone 2008-12-18 16:57:25 UTC
Created attachment 21287 [details] [review]
Patch to glxgears that adds a teartest.

While one opengl window, rendering less than the capacity of the graphics hardware, is synchronised to the vertical refresh, once two windows or more are opened, tearing is apparent at the top of the window, especially if it is placed near the top of the screen.

While the mesa demo program glsync may be used to investigate this problem, it doesn't quite highlight it enough because glsync creates too low a graphics load. I have attached a patch to glxgears that causes alternating vertical sidebars to be drawn, if a "-teartest" option is set. So running the following commands together with a patched glxgears:

$ glxgears -geometry 600x600+0+0 -teartest > /dev/null 2>&1 &
$ glxgears -geometry 600x600+600+0 -teartest > /dev/null 2>&1 &

will usually demonstrate the problem. (The graphics must load the system enough so that the rendering of one of the windows exceeds the vertical blank time, the time that no display occurs.)

This has been observed on ICH7 and ICH9 with pci ids 8086:2a42 and 8086:27a6, with the latest tip (as of 18 December 2008)
Comment 1 Michel Dänzer 2008-12-22 04:54:18 UTC
This used to work via the DRM_I915_VBLANK_SWAP ioctl.
Comment 2 Martin Peres 2019-10-14 13:20:08 UTC

Freedesktop's Bugzilla instance is EOLed and open bugs are about to be migrated to http://gitlab.freedesktop.org.

To avoid migrating out of date bugs, I am now closing all the bugs that did not see any activity in the past year. If the issue is still happening, please create a new bug in the relevant project at https://gitlab.freedesktop.org/drm (use misc by default).

Sorry about the noise!

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.