Bug 92587

Summary: [HSW] [GLES 3.1 CTS] ES31-CTS.compute_shader.* GPU_HANG
Product: Mesa Reporter: Marta Löfstedt <marta.lofstedt>
Component: Drivers/DRI/i965Assignee: Jordan Justen <jljusten>
Status: VERIFIED FIXED QA Contact: Intel 3D Bugs Mailing List <intel-3d-bugs>
Severity: major    
Priority: high CC: marta.lofstedt
Version: 11.0   
Hardware: Other   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: dmesg with GPU_HANG

Description Marta Löfstedt 2015-10-22 08:03:19 UTC
Created attachment 119058 [details]
dmesg with GPU_HANG

Software versions:
    4.2.0-1-generic
    OpenGL version string: 3.0 Mesa 11.1.0-devel (git-13a5805)

GPU hardware:
    OpenGL renderer string: Mesa DRI Intel(R) Haswell Desktop 
    00:02.0 VGA compatible controller [0300]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller [8086:0412] (rev 06)

CPU hardware:
    x86_64
    Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz

CTS version:
git@67ae88f31295

command: 
./glcts --deqp-case=ES31-CTS.compute_shader*

Environment:
Mesa built with: --enable-debug
export MESA_GLES_VERSION_OVERRIDE=3.1
export MESA_EXTENSION_OVERRIDE=GL_ARB_compute_shader

----------------------------------------------
When running all the compute shader test of the OpenGL ES 3.1 CTS, execution stops after 3 or for test with:
"intel_do_flush_locked failed: Input/output error"
dmesg shows:
[drm] GPU HANG: ecode 7:0:0x8fd8ffff, in glcts [23876], reason: Ring hung, action: reset

This is not reproducible when the tests are run alone.
The issue is not reproducible on Gen8+.
Comment 1 Jordan Justen 2015-10-27 16:01:28 UTC
This should be fixed by the kernel commit:

commit 7b9748cb513a6bef4af87b79f0da3ff7e8b56cd8
Author: Jordan Justen <jordan.l.justen@intel.com>
Date:   Thu Oct 1 23:09:58 2015 -0700

    drm/i915: Add GEN7_GPGPU_DISPATCHDIMX/Y/Z to the register whitelist

which is currently in:

  drm-intel/drm-intel-next
  drm-intel/drm-intel-next-fixes
  drm-intel/drm-intel-next-queued
  drm-intel/drm-intel-nightly
  drm-intel/drm-intel-testing
  drm-intel/for-linux-next

The symptom can be hidden by disabling the command parser:

echo "0" | sudo tee /sys/module/i915/parameters/enable_cmd_parser

Or, on the kernel command line:

i915.enable_cmd_parser=0
Comment 2 Marta Löfstedt 2015-10-28 09:29:14 UTC
Thanks Jordan!

I confirm that the issue is not reproducible with kernel drm-intel/drm-intel-next git@aed8bb.

So, we will get this in 4.4 then, great!
Comment 3 Marta Löfstedt 2015-10-28 09:33:29 UTC
The problem is not reproducible with kernel commit: 7b9748cb513a6bef4af87b79f0da3ff7e8b56cd8

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.