Bug 54098 - [Bisected ILK]Piglit shaders/fp-fragment-position regressed
Summary: [Bisected ILK]Piglit shaders/fp-fragment-position regressed
Status: VERIFIED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: git
Hardware: All Linux (All)
: high major
Assignee: Kenneth Graunke
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-08-27 01:42 UTC by lu hua
Modified: 2012-09-17 04:35 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
output (1.38 KB, text/plain)
2012-08-27 01:42 UTC, lu hua
Details

Description lu hua 2012-08-27 01:42:33 UTC
Created attachment 66154 [details]
output

System Environment:
--------------------------
Arch:            x86_64 
Platform:        Ironlake
Libdrm:	(master)libdrm-2.4.39-1-g7080bfdfd9b6c5f003daaef37ae9c329f2d46a6c
Mesa:	(master)a3685544e1e88828c4931059686cf3acc199079c
Xserver:(master)xorg-server-1.12.99.905
Xf86_video_intel:(master)2.20.4-58-g454cc8453af1852758c3396dbe303c13c5c1be27
Libva:	(staging)f12f80371fb534e6bbf248586b3c17c298a31f4e
Libva_intel_driver:(staging)82fa52510a37ab645daaa3bb7091ff5096a20d0b
Kernel:	(drm-intel-next-queued) 7788a765205f63abcb8645c16c85a968bd578f4f

Bug detailed description:
-------------------------
It fails on Ironlake with mesa master branch. It doesn't happen on 8.0 branch.

Bisect shows:85e8e9e000732908b259a7e2cbc1724a1be2d447 is the first bad commit.
commit 85e8e9e000732908b259a7e2cbc1724a1be2d447
Author:     Kenneth Graunke <kenneth@whitecape.org>
AuthorDate: Fri Aug 24 01:22:58 2012 -0700
Commit:     Kenneth Graunke <kenneth@whitecape.org>
CommitDate: Sat Aug 25 12:01:10 2012 -0700

    i965: Use linker-assigned sampler IDs in instruction encoding.

    When assigning uniform locations, the linker assigns each sampler
    uniform a sequential numerical ID.  gl_shader_program::SamplerUnits maps
    these sampler variable IDs to the actual texture units they reference
    (specified via glUniform1i).

    Previously, we encoded this mapping in the SEND instruction encoding:
    the "sampler" was the texture unit number, and the binding table index
    was SURF_INDEX_TEXTURE(the texture unit number).  This unfortunately
    meant that whenever the application changed the value of a sampler
    uniform, we had to recompile the shader to change the SEND instructions.

Reproduce steps:
----------------------------
1. xinit
2. ./bin/fp-fragment-position -auto
Comment 1 lu hua 2012-09-04 02:41:54 UTC
It also fails on mesa 9.0 branch(commit: 6886da783ac2fc549b4ffc1f42a47985044757f0)
Comment 2 Kenneth Graunke 2012-09-12 01:43:18 UTC
Patch on mailing list:
http://lists.freedesktop.org/archives/mesa-dev/2012-September/027268.html
Comment 3 Kenneth Graunke 2012-09-12 05:17:50 UTC
NAK that last patch - totally broken.

New patches that actually work:
http://lists.freedesktop.org/archives/mesa-dev/2012-September/027273.html
http://lists.freedesktop.org/archives/mesa-dev/2012-September/027274.html
Comment 4 Kenneth Graunke 2012-09-13 05:49:24 UTC
Pushed as commit 28f4be9eb91b12a2c6b1db6660cca71a98c486ec.  Fixed.
Comment 5 lu hua 2012-09-17 04:35:54 UTC
Verified.Fixed on mesa master branch(commit:679c93ff89c71cbd3b1).
Fixed on mesa 9.0 branch(commit:7cfd42cefe1949af51ecced9).


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.