Summary: | [G45 - Tesseract] Mesa 10.1.2 implementation error: Unsupported opcode 169872468 in FS | ||
---|---|---|---|
Product: | Mesa | Reporter: | Francesco Frassinelli <fraph24> |
Component: | Drivers/DRI/i965 | Assignee: | Kenneth Graunke <kenneth> |
Status: | RESOLVED FIXED | QA Contact: | Intel 3D Bugs Mailing List <intel-3d-bugs> |
Severity: | normal | ||
Priority: | medium | ||
Version: | 10.1 | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: | Level loaded with MESA_GLSL=dump and INTEL_DEBUG=fs |
Description
Francesco Frassinelli
2014-05-14 10:13:38 UTC
It looks like the opcode field is either uninitialized or is getting overwritten with garbage somehow. Can you run with the environment variables 'MESA_GLSL=dump' and 'INTEL_DEBUG=fs' set, and attach the output? Created attachment 99060 [details]
Level loaded with MESA_GLSL=dump and INTEL_DEBUG=fs
I haven't reproduced this specific "Unsupported opcode" failure, but attempting to compile those shaders has turned up all kinds of bugs in the texture rectangle coordinate scaling code, including writes past the end of an array. I've fixed that, but apparently we were papering over some other bugs as well, so now I'm having to fix those... :) Thanks for the report! (In reply to comment #3) > Thanks for the report! Thanks for fixing those bugs :) I decided to try an alternate approach, which should be easier to backport to the stable branches. The patch is on the mailing list: http://lists.freedesktop.org/archives/mesa-dev/2014-May/060136.html I don't know if this is sufficient to fix Tesseract, but I can compile all of the shaders in the attachment now. So it seems likely. Okay, that is upstream as: commit bb9623a1a8b1884817422752c8dced9f084d4547 Author: Kenneth Graunke <kenneth@whitecape.org> Date: Tue May 27 18:16:01 2014 -0700 i965: Fix repeated usage of rectangle texture coordinate scaling. Previously, we set up new entries in the params[] array on every access of a rectangle texture. Unfortunately, we only reserve space for (2 * MaxTextureImageUnits) extra entries, so programs which accessed rectangle textures more times than that would write off the end of the array and likely crash. We don't really have a decent mapping between the index returned by _mesa_add_state_reference and our index into the params array, so we have to manually search for it. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78691 Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net> Cc: mesa-stable@lists.freedesktop.org Would it be possible for you to try Mesa master? Sure! I've tested it and there's only a graphical glitch on some types of surfaces and I don't know if it could be related with this bug. For example, my gun has the correct texture, but it could be totally green or orange or brown depending on the environment colours, and it could became of another colour just moving it by a couple of pixel. Similar problem for glasses: most of the time they are not transparent, but just flat coloured. Some lights reflections could disappear from a surface in the same way. Maybe it's some kind of illumination glitch, but I don't know if it's related or not with this bug. By the way, no crashes and no Mesa unsupported opcode errors :) |
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.