fbo-blending-formats regressed on swrast, softpipe, and llvmpipe. $ ./bin/fbo-blending-formats -auto [...] Testing GL_RGB10 Probe at (96,0) Expected: 0.800000 0.300000 0.500000 1.000000 Observed: 0.833822 0.333333 0.566960 1.000000 when testing FBO result, blending with DST_ALPHA. PIGLIT:subtest {'GL_RGB10' : 'fail'} Testing GL_RGB12 Probe at (96,0) Expected: 0.800000 0.300000 0.500000 1.000000 Observed: 0.850004 0.349996 0.600000 1.000000 when testing FBO result, blending with DST_ALPHA. PIGLIT:subtest {'GL_RGB12' : 'fail'} Testing GL_RGB16 Probe at (96,0) Expected: 0.800000 0.300000 0.500000 1.000000 Observed: 0.850004 0.349996 0.600000 1.000000 when testing FBO result, blending with DST_ALPHA. PIGLIT:subtest {'GL_RGB16' : 'fail'} 306a3a4d6d933ab16ca40fab9dc7e177cf110f78 is the first bad commit commit 306a3a4d6d933ab16ca40fab9dc7e177cf110f78 Author: Carl Worth <cworth@cworth.org> Date: Mon Jan 14 14:17:16 2013 -0800 fbo-blending-formats: Enable testing for channels with 0 bits of data. The existing code is intentionally disabling testing for channels with 1 bit of data, (since the ambiguity in rounding makes it infeasible to test). But the disabling of testing for 0-bit channels was unintentional collateral damage. In particular, for RGB-only formats it's important to test that results always provide a value of 1.0 for alpha. So we change the condition to disable tests only when the number of bits is equal to 1, (as opposed to less then 2). We also just fudge in a tolerance value corresponding to 8 bits for channels with 0 bits of storage. (The tolerance probably doesn't matter at all here since we should really only be doing exact comparisons of values of 0.0 or 1.0). Reviewed-by: Marek Olšák <maraeo@gmail.com> :040000 040000 6f7f8ed73d818bcba747340ef629777161e7b687 0b7d5d44312ac71df116c221ee331c8b1c392a2e M tests bisect run success
I can confirm this on r600g (HD 6550D, mesa git, kernel 3.15-git) $ fbo-blending-formats -fbo -auto Using test set: Core formats Testing 3 Probe color at (120,0) Expected: 0.800000 0.300000 0.500000 1.000000 Observed: 0.847059 0.349020 0.600000 1.000000 when testing FBO result, blending with DST_ALPHA. PIGLIT:subtest {'3' : 'fail'} Testing 4 PIGLIT:subtest {'4' : 'pass'} Testing GL_RGB Probe color at (120,0) Expected: 0.800000 0.300000 0.500000 1.000000 Observed: 0.847059 0.349020 0.600000 1.000000 when testing FBO result, blending with DST_ALPHA. PIGLIT:subtest {'GL_RGB' : 'fail'} ... Testing GL_RGB8 Probe color at (120,0) Expected: 0.800000 0.300000 0.500000 1.000000 Observed: 0.847059 0.349020 0.600000 1.000000 when testing FBO result, blending with DST_ALPHA. PIGLIT:subtest {'GL_RGB8' : 'fail'} Testing GL_RGB10 Probe color at (120,0) Expected: 0.800000 0.300000 0.500000 1.000000 Observed: 0.832845 0.333333 0.566960 1.000000 when testing FBO result, blending with DST_ALPHA. PIGLIT:subtest {'GL_RGB10' : 'fail'} Testing GL_RGB12 Probe color at (120,0) Expected: 0.800000 0.300000 0.500000 1.000000 Observed: 0.850004 0.349996 0.600000 1.000000 when testing FBO result, blending with DST_ALPHA. PIGLIT:subtest {'GL_RGB12' : 'fail'} Testing GL_RGB16 Probe color at (120,0) Expected: 0.800000 0.300000 0.500000 1.000000 Observed: 0.850004 0.349996 0.600000 1.000000 when testing FBO result, blending with DST_ALPHA. PIGLIT:subtest {'GL_RGB16' : 'fail'} Testing GL_RGBA2 PIGLIT:subtest {'GL_RGBA2' : 'pass'} Testing GL_RGBA4 PIGLIT:subtest {'GL_RGBA4' : 'pass'} Testing GL_RGB5_A1 PIGLIT:subtest {'GL_RGB5_A1' : 'pass'} Testing GL_RGBA8 PIGLIT:subtest {'GL_RGBA8' : 'pass'} Testing GL_RGB10_A2 PIGLIT:subtest {'GL_RGB10_A2' : 'pass'} Testing GL_RGBA12 PIGLIT:subtest {'GL_RGBA12' : 'pass'} Testing GL_RGBA16 PIGLIT:subtest {'GL_RGBA16' : 'pass'} PIGLIT: {'result': 'fail' } Should it be fixed in gallium or in piglit?
This is not easy to fix on Evergreen and older hardware. The test passes on Cayman and later hardware.
Closing as NOTABUG. This is not an issue with piglit, it's actually an issue with the drivers.
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.