Bug 110784

Summary: [regression][bisected] Reverting 'expose 0 shader binary formats for compat profiles for Qt' causes get_program_binary failures on Iris
Product: Mesa Reporter: Clayton Craft <clayton.a.craft>
Component: Drivers/Gallium/IrisAssignee: Timothy Arceri <t_arceri>
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-05-28 15:10:52 UTC
The following tests are failing on Iris when 55376cb31e2 was reverted:

piglit.spec.arb_get_program_binary.execution.uniform-after-restore
piglit.spec.arb_get_program_binary.reset-uniform


/tmp/build_root/m64/lib/piglit/bin/shader_runner /tmp/build_root/m64/lib/piglit/tests/spec/arb_get_program_binary/execution/uniform-after-restore.shader_test -auto -fbo
Probe color at (0,0)
  Expected: 0 255 0 255
  Observed: 255 0 255 0
Test failure on line 35


/tmp/build_root/m64/lib/piglit/bin/arb_get_program_binary-reset-uniform -auto -fbo
uniform color didn't match expected color


Bisected to this commit:

commit 11e16ca7ce0a702088b35ccccea85e243d801ef9
Author: Timothy Arceri <tarceri@itsqueeze.com>
Date:   Mon May 27 20:07:41 2019 +1000

    Revert "st/mesa: expose 0 shader binary formats for compat profiles for Qt"
Comment 1 Timothy Arceri 2019-05-28 23:31:26 UTC
Just FYI this isn't a regression, the test was being skipped previously so it seems this was likely already broken we just weren't testing it where it was enabled (in core profiles).

Anyway I'll look into it.
Comment 2 Timothy Arceri 2019-05-29 03:15:08 UTC
This makes the test pass on radeonsi:

https://patchwork.freedesktop.org/patch/307417/
Comment 3 Timothy Arceri 2019-06-04 01:45:59 UTC
Thanks for the bug report. This should now be fixed by:

commit fea36a8f43ea010ce0581a63b4b5fa1213a35982
Author: Timothy Arceri <tarceri@itsqueeze.com>
Date:   Wed May 29 13:13:44 2019 +1000

    st/glsl: make sure to propagate initialisers to driver storage
    
    This essentially reverts 20234cfe3a20.
    
    Fixes piglit test:
    tests/spec/arb_get_program_binary/execution/uniform-after-restore.shader_test
    
    Fixes: 20234cfe3a20 "st/mesa: don't propagate uniforms when restoring from cache"
    
    Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110784

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.