Bug 33805

Summary: [bisected] thief in wine causes a gpu hang
Product: Mesa Reporter: Anton Khirnov <anton>
Component: Drivers/DRI/i915Assignee: Ian Romanick <idr>
Status: CLOSED INVALID QA Contact:
Severity: critical    
Priority: medium CC: kenneth
Version: gitKeywords: regression
Hardware: x86 (IA32)   
OS: Linux (All)   
i915 platform: i915 features:
Attachments: /sys/kernel/debug/dri/0/i915_error_state after the hang

Description Anton Khirnov 2011-02-01 04:50:10 UTC
Created attachment 42805 [details]
/sys/kernel/debug/dri/0/i915_error_state after the hang

Running Thief in wine causes a reproducible GPU hang in some areas.

My system is:
kernel 2.6.37
libdrm2 2.4.23
xf86-video-intel: tried 2.13 and 2.14
mesa: tried 7.9 and today's git (84b857ef73011e576a78e2c2419610f4f5bebae4)

contents of i915_error_state attached.
Comment 1 Chris Wilson 2011-02-02 01:19:29 UTC
This seems to be the critical shader:

0x066eb448:      0x7d060004: 3DSTATE_PIXEL_SHADER_CONSTANTS
0x066eb450:      0x00000000:    C0.X = 0.000000
0x066eb454:      0x00000000:    C0.Y = 0.000000
0x066eb458:      0x00000000:    C0.Z = 0.000000
0x066eb45c:      0x00000000:    C0.W = 0.000000
0x066eb460:      0x7d050029: 3DSTATE_PIXEL_SHADER_PROGRAM
0x066eb464:      0x19180000:    PS000: DCL S0 2D
0x066eb468:      0x00000000:    PS000
0x066eb46c:      0x00000000:    PS000
0x066eb470:      0x19083c00:    PS001: DCL T0.xyzw
0x066eb474:      0x00000000:    PS001
0x066eb478:      0x00000000:    PS001
0x066eb47c:      0x19184000:    PS002: DCL S1 2D
0x066eb480:      0x00000000:    PS002
0x066eb484:      0x00000000:    PS002
0x066eb488:      0x19087c00:    PS003: DCL T1.xyzw
0x066eb48c:      0x00000000:    PS003
0x066eb490:      0x00000000:    PS003
0x066eb494:      0x190a3c00:    PS004: DCL DIFFUSE.xyzw
0x066eb498:      0x00000000:    PS004
0x066eb49c:      0x00000000:    PS004
0x066eb4a0:      0x190a5c00:    PS005: DCL SPECULAR.xyz
0x066eb4a4:      0x00000000:    PS005
0x066eb4a8:      0x00000000:    PS005
0x066eb4ac:      0x15300000:    PS006: TEXLD U0, S0, T0
0x066eb4b0:      0x01000000:    PS006
0x066eb4b4:      0x00000000:    PS006
0x066eb4b8:      0x02417f00:    PS007: MOV R5.sat, U0
0x066eb4bc:      0x01230000:    PS007
0x066eb4c0:      0x00000000:    PS007
0x066eb4c4:      0x15300001:    PS008: TEXLD U0, S1, T1
0x066eb4c8:      0x01020000:    PS008
0x066eb4cc:      0x00000000:    PS008
0x066eb4d0:      0x0241bf00:    PS009: MOV R6.sat, U0
0x066eb4d4:      0x01230000:    PS009
0x066eb4d8:      0x00000000:    PS009
0x066eb4dc:      0x02005c14:    PS010: MOV R1.xyz, R5
0x066eb4e0:      0x01230000:    PS010
0x066eb4e4:      0x00000000:    PS010
0x066eb4e8:      0x020060a0:    PS011: MOV R1.w, DIFFUSE.wwww
0x066eb4ec:      0x33330000:    PS011
0x066eb4f0:      0x00000000:    PS011
0x066eb4f4:      0x03005c18:    PS012: MUL R1.xyz, R6, R1
0x066eb4f8:      0x01230101:    PS012
0x066eb4fc:      0x23000000:    PS012
0x066eb500:      0x04203ca4:    PS013: MAD oC, SPECULAR.xyz1, C0, R1
0x066eb504:      0x01254001:    PS013
0x066eb508:      0x23010123:    PS013
0x066eb50c:      0x7d040031: 3DSTATE_LOAD_STATE_IMMEDIATE_1
0x066eb510:      0x0a0fabb8:    S0
0x066eb514:      0x0a0a0000:    S1
0x066eb518:      0x7fa00010: 3DPRIMITIVE sequential indirect POINTLIST, 16 starting from 0
0x066eb51c:      0x00000000:               start
Comment 2 Anton Khirnov 2011-02-02 01:43:00 UTC
I've discovered that the issue isn't present in mesa 7.7.1 (the one currently in debian testing). I'll try to do some bisecting once I have more free time.
Comment 3 Anton Khirnov 2011-02-22 00:04:03 UTC
Sorry for the delay, bisecting reveals that the culprit is:

commit 22cd6f2cb4996de0a30c8f865f7011898ac8b8e2
Author: Brian Paul <brianp@vmware.com>
Date:   Fri Mar 26 10:08:52 2010 -0600

    mesa: only call _mesa_update_state() when necessary in glGet functions
Comment 4 Eric Anholt 2011-07-12 15:45:41 UTC
Well, that bisected commit definitely shouldn't impact driver rendering behavior, so presumably it's just adjusting state update order so that some statechange doesn't get misplaced.

Can you capture a trace using apitrace so we can try to reproduce the failure here?
Comment 5 Kenneth Graunke 2012-03-20 23:59:05 UTC
Is this still an issue?
Comment 6 Elizabeth 2017-10-27 20:17:50 UTC
(In reply to Kenneth Graunke from comment #5)
> Is this still an issue?
No feedback from reporter for too long. Closing. Thank you.

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.