Bug 66606

Summary: [i965 bisected]GLBenchmark 2.5.1/2.7.0 sometimes render error with gnome-session enabling SNA
Product: Mesa Reporter: meng <mengmeng.meng>
Component: Drivers/DRI/i965Assignee: Kenneth Graunke <kenneth>
Status: VERIFIED FIXED QA Contact:
Severity: major    
Priority: high CC: chris, eero.t.tamminen, kenneth
Version: git   
Hardware: All   
OS: Linux (All)   
i915 platform: i915 features:
Attachments: scrot picture

Description meng 2013-07-05 03:59:28 UTC
Platform: IVB/HSW
Mesa:     (master)bbd1e60198548a12be3405fc32dd39a87e8968ab
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:
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]
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)

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.