Bug 79709

Summary: [DRI3 IVB/HSW/BYT-M/BDW bisected] X crash when run synmark2 v5.3.0
Product: xorg Reporter: zhoujian <jianx.zhou>
Component: Server/GeneralAssignee: Keith Packard <keithp>
Status: VERIFIED FIXED QA Contact: Intel GFX Bugs mailing list <intel-gfx-bugs>
Severity: blocker    
Priority: highest CC: chris, eero.t.tamminen, gordon.jin, keithp, mengmeng.meng
Version: git   
Hardware: All   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg.0.log
none
dmesg.log
none
Removes the flip_pending vblank from the window_list, preventing it from being destroyed when the window is destroyed none

Description zhoujian 2014-06-06 02:57:21 UTC
Platform: IVB/HSW/BYT-M/BDW
Libdrm: (master)libdrm-2.4.54-9-g8fc62ca8ac010659023bb63c4759eb683de4f9af
Mesa: (master)cf29913aa156accbe60cb35f9a0bd2c21726cfa3
Xserver: (master)xorg-server-1.15.99.903
Xf86_video_intel: (master)2.99.911-256-g08148896196443a8582c30b47ff546acca78d69c
Cairo: (master)ead5c7909f3db1d0d81121fc2775c458871891b2
Libva: (staging)35e70cb9b9c77dfb99fb370e319ed501f0c31b17
Libva_intel_driver: (staging)fbbe401aa28a0b3859d587ef08f0df15a2f7c8f2
Kernel:(drm-intel-nightly)git-0a37b5

Bug detailed description:
----------------------------------------------
After running synmark2_OglBatch0 causes X crash on IVB/HSW/BYT-M/BDW. The problem exists on gnome-session and Raw X. It’s  Xserver regression, Please see dmesg.log and Xorg.o.log.
By bisected show the first bad commit is :
e6f5d9d7b7efdacea0f22f1808efca849bcede4c
Author:     Keith Packard <keithp@keithp.com>
AuthorDate: Mon Jan 27 11:23:58 2014 -0800
Commit:     Keith Packard <keithp@keithp.com>
CommitDate: Wed Jun 4 22:03:35 2014 -0700
    present: Queue flips for later execution

output log:
X: present_screen.c:94: present_clear_window_flip: Assertion `flip_pending->abort_flip' failed.
XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
xterm: fatal IO error 11 (Resource temporarily unavailable) or KillClient on X server ":0"
      after 979 requests (979 known processed) with 0 events remaining.
xinit: connection to X server lost
[1]+  Done                    xinit  (wd: ~)
(wd now: /usr/local/games/OpenGL/SynMark2)

Reproduce steps:
---------------------------------------------
1. xinit&
2. ./synmark2 OglBatch0
Comment 1 zhoujian 2014-06-06 02:58:20 UTC
Created attachment 100498 [details]
Xorg.0.log
Comment 2 zhoujian 2014-06-06 03:00:01 UTC
Created attachment 100499 [details]
dmesg.log
Comment 3 meng 2014-06-06 08:58:25 UTC
The first bad commit git-e6f5d9d7 also causes many 3D performance drop, you may see bug 79715.
Comment 4 Chris Wilson 2014-06-10 09:06:25 UTC
Note to avoid this blocking other regression testing, you can use the snippet:

Section "Device"
  Identifier "Intel"
  Option "DRI" "2"
EndSection
Comment 5 Keith Packard 2014-06-17 22:56:32 UTC
Created attachment 101277 [details] [review]
Removes the flip_pending vblank from the window_list, preventing it from being destroyed when the window is destroyed
Comment 6 Keith Packard 2014-06-17 22:57:07 UTC
I've fixed the crash and posted the patch here and to the xorg-devel list.
Comment 7 zhoujian 2014-06-18 05:09:00 UTC
(In reply to comment #5)
Above the patch can fixed this issue,please add the patch to nightly.
Comment 8 zhoujian 2014-06-18 05:24:24 UTC
Please push the patch to upstream,thanks.
Comment 9 zhoujian 2014-06-27 06:14:26 UTC
Verified it.

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.