https://bugs.freedesktop.org/show_bug.cgi?id=100785
Bug ID: 100785 Summary: [regression, bisected] arb_gpu_shader5 piglit fail Product: Mesa Version: git Hardware: Other OS: All Status: NEW Severity: normal Priority: medium Component: Drivers/Gallium/r600 Assignee: dri-devel@lists.freedesktop.org Reporter: Hi-Angel@yandex.ru QA Contact: dri-devel@lists.freedesktop.org
Failing tests:
bin/arb_gpu_shader5-interpolateAtSample -auto -fbo bin/arb_gpu_shader5-interpolateAtSample-nonconst -auto -fbo
Bisection result:
eb8aa93c03ee89ffd3041d41b6293e4b282b6ce6 is the first bad commit commit eb8aa93c03ee89ffd3041d41b6293e4b282b6ce6 Author: Timothy Arceri tarceri@itsqueeze.com Date: Fri Apr 14 16:25:58 2017 +1000
glsl: disable varying packing for varying used by interpolateAt*
Currently the NIR backends depend on GLSL IR copy propagation to fix up the interpolateAt* function params after varying packing changes the shader input to a global. It's possible copy propagation might not always do what we need it too, and we also shouldn't depend on optimisations to do this type of thing for us.
I'm not sure if the same is true for TGSI, but the following commit should re-enable packing for most cases in a safer way, so we just disable it everywhere.
No change in shader-db for i965 (BDW)
Acked-by: Elie Tournier elie.tournier@collabora.com Reviewed-by: Kenneth Graunke kenneth@whitecape.org
Reverting the commit fixes the problem.
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #1 from Hi-Angel Hi-Angel@yandex.ru --- Ah, a fail output:
$ LD_LIBRARY_PATH=/home/constantine/Projects/mesa/lib LIBGL_DRIVERS_PATH=/home/constantine/Projects/mesa/lib/gallium /home/constantine/Projects/piglit/bin/arb_gpu_shader5-interpolateAtSample -auto -fbo Probe color at (0,0) Expected: 0 255 0 Observed: 20 195 0 PIGLIT: {"result": "fail" }
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #2 from Timothy Arceri t_arceri@yahoo.com.au --- Does it work if you set:
R600_DEBUG=nosb
Also it would be helpful if you could attach a before and after shader dump using.
R600_DEBUG=vs,ps
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #3 from Hi-Angel Hi-Angel@yandex.ru --- (In reply to Timothy Arceri from comment #2)
Does it work if you set:
R600_DEBUG=nosb
Yeah, this way it does pass.
Also it would be helpful if you could attach a before and after shader dump using.
R600_DEBUG=vs,ps
Attaching.
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #4 from Hi-Angel Hi-Angel@yandex.ru --- Created attachment 131043 --> https://bugs.freedesktop.org/attachment.cgi?id=131043&action=edit ps,vs dump HEAD
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #5 from Hi-Angel Hi-Angel@yandex.ru --- Created attachment 131044 --> https://bugs.freedesktop.org/attachment.cgi?id=131044&action=edit ps,vs dump HEAD with reverted eb8aa93c03
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #6 from Timothy Arceri t_arceri@yahoo.com.au --- Thanks. Looks like a bug in sb optimisations so the output of R600_DEBUG=vs,ps,nosb on HEAD would also be useful.
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #7 from Hi-Angel Hi-Angel@yandex.ru --- Created attachment 131062 --> https://bugs.freedesktop.org/attachment.cgi?id=131062&action=edit ps,vs,nosb dump HEAD
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #8 from Hi-Angel Hi-Angel@yandex.ru --- Created attachment 131063 --> https://bugs.freedesktop.org/attachment.cgi?id=131063&action=edit ps,vs,nosb dump HEAD with reverted eb8aa93c03
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #9 from Hi-Angel Hi-Angel@yandex.ru --- Hmm, wait. Now for some reason it fails with nosb also.
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #10 from Hi-Angel Hi-Angel@yandex.ru --- Not sure why, but I can't get it passing with "nosb" anymore :(
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #11 from Hi-Angel Hi-Angel@yandex.ru --- So, actually there're 4 different combinations:
| usual run | nosb | HEAD | fails | passes| HEAD eb8aa93c03 reverted | passes | fails |
With that said, I've attached dumps for all 4 configurations. But I do actually recall that "nosb" option was buggy, see this https://bugs.freedesktop.org/show_bug.cgi?id=93715
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #12 from Hi-Angel Hi-Angel@yandex.ru --- (EDIT: replaced tabs with space in the table)
So, actually there're 4 different combinations:
| usual run | nosb | HEAD | fails | passes| HEAD eb8aa93c03 reverted | passes | fails |
With that said, I've attached dumps for all 4 configurations. But I do actually recall that "nosb" option was buggy, see this https://bugs.freedesktop.org/show_bug.cgi?id=93715
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #13 from Hi-Angel Hi-Angel@yandex.ru --- Possible fix https://lists.freedesktop.org/archives/mesa-dev/2017-June/159872.html
It solves the problem, but needs more work to exclude other bugs of alike type.
https://bugs.freedesktop.org/show_bug.cgi?id=100785
--- Comment #14 from Hi-Angel Hi-Angel@yandex.ru --- Created attachment 132157 --> https://bugs.freedesktop.org/attachment.cgi?id=132157&action=edit fix
FTR, attaching the fix. However I don't know when I get it sent to the ML because I can't finish piglit testing — GPU hangs.
https://bugs.freedesktop.org/show_bug.cgi?id=100785
Hi-Angel Hi-Angel@yandex.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED
--- Comment #15 from Hi-Angel Hi-Angel@yandex.ru --- Fixed by https://cgit.freedesktop.org/mesa/mesa/commit/?id=3d466f3e9f76c91083f0cfbb8a...
dri-devel@lists.freedesktop.org