Bug 111251

Summary: [Regression][Bisected] dEQP GLES 3 tests crash with node_for_deref: Assertion `idx < parent->num_children' failed
Product: Mesa Reporter: Clayton Craft <clayton.a.craft>
Component: Drivers/DRI/i965Assignee: Connor Abbott <cwabbott0>
Status: RESOLVED FIXED QA Contact: Intel 3D Bugs Mailing List <intel-3d-bugs>
Severity: normal    
Priority: medium Keywords: bisected, regression
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Clayton Craft 2019-07-29 16:16:25 UTC
Full list of tests that crash can be found here:
    https://mesa-ci.01.org/mesa_master/builds/17304/group/63a9f0ea7bb98050796b649e85481845#fails


Test output:
    Test case 'dEQP-GLES3.functional.transform_feedback.array.separate.points.lowp_mat4x2'..
    deqp-gles3: ../src/compiler/nir/nir_opt_find_array_copies.c:122: node_for_deref: 
    Assertion `idx < parent->num_children' failed.


Bisected to the following commit:

commit 156306e5e62fb4fda0e829c5798fffdf7eb1907c
Author: Connor Abbott <cwabbott0@gmail.com>
Date:   Tue Jun 18 12:12:49 2019 +0200

    nir/find_array_copies: Handle wildcards and overlapping copies
Comment 1 Connor Abbott 2019-07-30 10:00:39 UTC
This should be fixed by https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1501.
Comment 2 Clayton Craft 2019-07-30 17:36:58 UTC
Looks good to me, tests are now passing.
Comment 3 Clayton Craft 2019-07-30 21:20:42 UTC
Upon closer inspection, it seems the following tests are still failing on all i965 platforms even after MR 1501 was merged:

deqp:
    dEQP-GLES31.functional.shaders.linkage.es31.geometry.varying.types.float_struct
    dEQP-GLES31.functional.shaders.linkage.es31.geometry.varying.types.mat3x2
    dEQP-GLES31.functional.shaders.linkage.es31.tessellation_geometry.varying.types.float_struct
    dEQP-GLES31.functional.shaders.linkage.es31.tessellation_geometry.varying.types.mat3x2
    dEQP-GLES31.functional.shaders.linkage.es32.geometry.varying.types.float_struct
    dEQP-GLES31.functional.shaders.linkage.es32.geometry.varying.types.mat3x2
    dEQP-GLES31.functional.shaders.linkage.es32.tessellation_geometry.varying.types.float_struct
    dEQP-GLES31.functional.shaders.linkage.es32.tessellation_geometry.varying.types.mat3x2


piglit: 
    spec.glsl-1_50.execution.variable-indexing.gs-input-array-vec2-index-rd
    spec.glsl-1_50.execution.variable-indexing.vs-output-array-vec2-index-wr-before-gs
    spec.glsl-1_50.execution.varying-struct-basic-vs-gs

stderr from tests can be viewed by putting in the test name in the search box at the top of this page:
    https://mesa-ci.01.org/mesa_master_daily/builds/5141/group/63a9f0ea7bb98050796b649e85481845

For example the output from dEQP-GLES31.functional.shaders.linkage.es31.geometry.varying.types.float_struct:
    https://mesa-ci.01.org/mesa_master_daily/builds/5141/results/741381931
Comment 4 Connor Abbott 2019-07-31 10:15:52 UTC
I created https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1521 which I think fixes the remaining errors.
Comment 5 Clayton Craft 2019-07-31 16:53:29 UTC
I'm running that patch through CI now.

FYI, CI is still set up to trigger builds when you (Conner) push to the 'intel-jenkins' branch in your mesa repo, and you can use that in the future to test any patches/fixed before merging.
Comment 6 Clayton Craft 2019-08-01 03:57:22 UTC
Looks like MR 1521 fixes the remaining tests in CI.
Comment 7 Connor Abbott 2019-08-02 14:57:16 UTC
Pushed to master.

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.