Bug 66606 - [i965 bisected]GLBenchmark 2.5.1/2.7.0 sometimes render error with gnome-session enabling SNA
[i965 bisected]GLBenchmark 2.5.1/2.7.0 sometimes render error with gnome-sess...
Status: VERIFIED FIXED
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965
git
All Linux (All)
: high major
Assigned To: Kenneth Graunke
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-07-05 03:59 UTC by meng
Modified: 2014-01-02 01:41 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments
scrot picture (36.01 KB, image/png)
2013-07-05 04:00 UTC, meng
Details
Xorg.0.log (17.22 KB, text/plain)
2013-07-05 04:00 UTC, meng
Details

Note You need to log in before you can comment on or make changes to this bug.
Description meng 2013-07-05 03:59:28 UTC
Environment:
--------------------------
Platform: IVB/HSW
Mesa:     (master)bbd1e60198548a12be3405fc32dd39a87e8968ab
Xf86_video_intel:(master)2.21.11-26-gebf4517a0bb510e406795c169aa21b7cc615ed31
Kernel:	   (drm-intel-nightly) a59485486882b9867bdcb1fe41cfdcba291c6585

Bug detailed description:
-------------------------
Glbenchmark 2.5.1/2.7.0 render error(white screen) with gnome-session enabling SNA on IVB/HSW. The problem doesn’t exist on Raw X(xinit&) or without SNA.
Please see scrot picture and Xorg.0.log.
It’s mesa regression, bisecting show c the first bad commit:

commit c9db037dc999eadbcaa8816c814e6ec1776d1a40
Author: Kenneth Graunke <kenneth@whitecape.org>
Date:   Fri Jun 28 16:35:18 2013 -0700

    i965: Delete pre-DRI2.3 viewport hacks.


Reproduce steps:
--------------------
1.xinit&
2.gnome-session
3.GLbenchmark 2.5.1
 vblank_mode=0 ./GLBenchmark2 -data ../../data/  -w 1920 -h 1080 -t 2000000
Comment 1 meng 2013-07-05 04:00:19 UTC
Created attachment 82057 [details]
scrot picture
Comment 2 meng 2013-07-05 04:00:47 UTC
Created attachment 82058 [details]
Xorg.0.log
Comment 3 meng 2013-07-05 07:33:58 UTC
The problem could be reproduced by 1 in 10 runs.
Comment 4 Kenneth Graunke 2013-07-05 16:37:01 UTC
Fascinating.  Sounds like another problem Eero noticed that we probably can't talk about here.  Probably the same root cause...
Comment 5 Chris Wilson 2013-07-05 16:41:24 UTC
Are you sure it is not just a missing InvalidateNotify, which itself would be a race condition?
Comment 6 meng 2013-07-08 00:24:26 UTC
When white screen, performance would "rise"(211.00fps -> 363.00fps).
Comment 7 meng 2013-07-24 06:10:14 UTC
The problem also exists on SNB/ILK.

Hi, can you reproduce it ?
Comment 8 meng 2013-07-25 01:04:12 UTC
(In reply to comment #5)
> Are you sure it is not just a missing InvalidateNotify, which itself would
> be a race condition?

Hi Chris, how can I judge "a missing InvalidateNotify"? Or some tools?
Comment 9 Kenneth Graunke 2013-07-25 23:11:26 UTC
Apparently EGL needs the viewport hacks, since it doesn't deliver DRI2Invalidate events due to xcb limitations.  GLBenchmark's EGL builds would be affected.

Given that, I've reverted the commit:

commit 0e9549e2bd57168086421468cbf1db0821c36730
Author: Kenneth Graunke <kenneth@whitecape.org>
Date:   Thu Jul 25 15:11:13 2013 -0700

    Revert "i965: Delete pre-DRI2.3 viewport hacks."
    
    This reverts commit c9db037dc999eadbcaa8816c814e6ec1776d1a40.
    
    Eric believes that the viewport hacks are still necessary for EGL;
    invalidate events aren't hooked up properly.
    
    This commit caused a regression where EFL applications wouldn't show
    anything other than window decorations; GLBenchmark also showed issues.
    
    The revert had conflicts due to the intel_context/brw_context merge.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66606
    Cc: mesa-stable@lists.freedesktop.org
Comment 10 meng 2013-07-26 01:03:46 UTC
Verified it.
Comment 11 Gordon Jin 2014-01-02 01:41:50 UTC
(give the credit to Ken)