Bug 93335 - [IVB, HSW] piglit.spec.arb_pipeline_statistics_query.arb_pipeline_statistics_query-comp crashes
Summary: [IVB, HSW] piglit.spec.arb_pipeline_statistics_query.arb_pipeline_statistics_...
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: git
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Mark Janes
QA Contact: Intel 3D Bugs Mailing List
Depends on:
Reported: 2015-12-10 20:06 UTC by Mark Janes
Modified: 2016-02-11 20:05 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Description Mark Janes 2015-12-10 20:06:29 UTC
d04612b60d98ff785646affaffc3d7243deecb74 regressed this test on hsw/ivb:

Author:     Jordan Justen <jordan.l.justen@intel.com>
AuthorDate: Wed Sep 2 15:47:33 2015 -0700
Commit:     Jordan Justen <jordan.l.justen@intel.com>
CommitDate: Wed Dec 9 23:50:38 2015 -0800

    i965: Enable ARB_compute_shader extension on supported hardware
    Enable ARB_compute_shader on gen7+, on hardware that supports the
    OpenGL 4.3 requirements of a local group size of 1024.
    With SIMD16 support, this is limited to Ivy Bridge and Haswell.
    Broadwell will work with a local group size up to 896 on SIMD16
    meaning programs that use this size or lower should run when setting
    Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
    Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
    Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>

Test output:
/tmp/build_root/m32/lib/piglit/bin/arb_pipeline_statistics_query-comp -auto -fbo
piglit: debug: Requested an OpenGL 3.2 Core Context, and received a matching 3.3 context

Standard Error

arb_pipeline_statistics_query-comp: /mnt/space/jenkins/jobs/Leeroy/workspace/repos/piglit/tests/spec/arb_pipeline_statistics_query/pipeline_stats_comp.c:100: dispatch_size: Assertion `ok' failed.
Comment 1 Kenneth Graunke 2016-02-10 03:17:44 UTC
Removing the regression tag; skip -> crash isn't a regression.

Broadwell fails to compile the shaders when running with the 1023/1024 size workgroup, and hits the "Assertion `ok' failed."

However, this bug is about IVB/HSW.  The test passes for me with Mesa master (64-bit) on Haswell.  Perhaps it was fixed at some point?
Comment 2 Mark Janes 2016-02-10 04:26:16 UTC
I definitely see a reliable assertion on hsw, taking the latest percheckin mesa CI build (85fab1f):

/tmp/build_root/m64/lib/piglit/bin/arb_pipeline_statistics_query-comp -auto -fbo
piglit: debug: Requested an OpenGL 3.2 Core Context, and received a matching 3.3 context
Standard Error
arb_pipeline_statistics_query-comp: ../tests/spec/arb_pipeline_statistics_query/pipeline_stats_comp.c:100: dispatch_size: Assertion `ok' failed.

Strangely, the test skips in the CI on bdw.
Comment 3 Mark Janes 2016-02-10 05:12:45 UTC
On my local system, this test was skipping until I removed i915.enable_cmd_parser=0 from the boot parameters.  BDW CI systems boot with that parameter, which probably explains why the test is skipped.

This test passes on my local hswgt2, but crashes on a CI hswgt2 with identical kernel version and boot params.  I need to investigate.
Comment 4 Kenneth Graunke 2016-02-10 05:31:54 UTC
I was able to reproduce the assertion in a 32-bit build.  I then noticed that the test is just broken - it provided a bogus uninitialized length for the shader code, which meant that the shader usually didn't compile.  Simple mistake.

Patch for the test here:
Comment 5 Kenneth Graunke 2016-02-10 05:36:36 UTC
Sorry for the confusion - the test skips on Broadwell because we don't have ARB_compute_shader enabled there.  My report of it failing to compile the shaders is with the feature forced on.
Comment 6 Kenneth Graunke 2016-02-11 20:05:44 UTC
Fixed in Piglit by:

commit e7d04d02fd2fa68b3bcc9d90c7b18622b599bc08
Author: Kenneth Graunke <kenneth@whitecape.org>
Date:   Tue Feb 9 21:30:05 2016 -0800

    Fix invalid glShaderSource call in pipeline_stats_comp.

With that, the test works fine for me on Haswell.  Mark, feel free to reopen if it doesn't work for 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.