Bug 77738 - [r600g, bisected] 4 piglit texwrap tests regressed
Summary: [r600g, bisected] 4 piglit texwrap tests regressed
Status: RESOLVED WONTFIX
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/r600 (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2014-04-21 20:09 UTC by Pavel Ondračka
Modified: 2014-07-14 21:02 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Pavel Ondračka 2014-04-21 20:09:53 UTC
./texwrap GL_EXT_texture_sRGB-s3tc bordercolor -fbo -auto
Testing GL_EXT_texture_sRGB-s3tc.
Testing the border color only.
Testing GL_COMPRESSED_SRGB, border color only
Testing GL_COMPRESSED_SRGB_ALPHA, border color only
Testing GL_COMPRESSED_SLUMINANCE, border color only
Testing GL_COMPRESSED_SLUMINANCE_ALPHA, border color only
Fail with NEAREST and CLAMP_TO_BORDER at (95,36) @ 0,0
  Expected: 25 25 25 204
  Observed: 25 25 25 26
Fail with NEAREST and MIRROR_CLAMP_TO_BORDER_EXT at (273,36) @ 0,0
  Expected: 25 25 25 204
  Observed: 25 25 25 26
Fail with LINEAR and CLAMP at (6,125) @ 0,0
  Expected: 82 82 82 216
  Observed: 83 83 83 83
Fail with LINEAR and CLAMP_TO_BORDER at (95,125) @ 0,0
  Expected: 25 25 25 204
  Observed: 25 25 25 26
Fail with LINEAR and MIRROR_CLAMP_EXT at (184,125) @ 0,0
  Expected: 82 82 82 216
  Observed: 83 83 83 83
Fail with LINEAR and MIRROR_CLAMP_TO_BORDER_EXT at (273,125) @ 0,0
  Expected: 25 25 25 204
  Observed: 25 25 25 26
Testing GL_COMPRESSED_SRGB_S3TC_DXT1, border color only
Testing GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1, border color only
Testing GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3, border color only
Testing GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5, border color only

Another failing tests:
texwrap GL_EXT_texture_sRGB bordercolor swizzled -fbo -auto
texwrap GL_EXT_texture_sRGB bordercolor -fbo -auto
texwrap GL_EXT_texture_sRGB-s3tc bordercolor swizzled -fbo -auto

First bad commit:
commit 12b959c351d81a35139ad0e504f6f6896077dbd0
Author: Brian Paul <brianp@vmware.com>
Date:   Tue Mar 25 11:04:40 2014 -0600

    st/mesa: overhaul texture / sample swizzle code
    
    Previously we only examined the GL_DEPTH_MODE state to determine the
    sampler view swizzle for depth textures.  Now we also consider the
    texture base format for color textures too.
    
    The basic idea is if we're sampling from a RGB texture we always
    want to get A=1, even if the actual hardware format might be RGBA.
    We had assumed that the texture's A values were always one since that's
    what Mesa's texstore code does.  But if we render to the RGBA texture,
    the A values might not be 1.  Subsequent sampling didn't return the
    right values.
    
    Now we examine the user-specified texture base format vs. the actual
    gallium format to determine the right swizzle.
    
    Fixes several fbo-blending-formats, fbo-clear-formats and fbo-tex-rgbx
    failures with VMware/svga driver (and possibly other drivers).
    No other piglit regressions with softpipe or VMware/svga.
    
    Reviewed-by: Marek Olšák <maraeo@gmail.com>


GPU: Advanced Micro Devices, Inc. [AMD/ATI] Turks XT [Radeon HD 6670/7670]
Kernel: 3.13.10-200.fc20.x86_64
mesa: f8ae2a56c6164979223d2268691e354fe56d4bec
libdrm: d4083dc762a2974c35ecd16be995272bbb6d57b4
Comment 1 David Heidelberg (okias) 2014-05-19 01:24:40 UTC
Not exactly sure if it's also this issue, but on r600g (HD 6550D, kernel 3.15-git, mesa-git) I getting this:

$ bin/texwrap GL_EXT_texture_sRGB-s3tc bordercolor swizzled -fbo -auto
Testing GL_EXT_texture_sRGB-s3tc.
Testing the border color only.
Using texture swizzling.
Testing GL_COMPRESSED_SRGB, swizzled, border color only
Fail with NEAREST and CLAMP_TO_BORDER at (95,36) @ 0,0
  Expected: 127 25 229 255
  Observed: 25 229 128 255
Fail with NEAREST and MIRROR_CLAMP_TO_BORDER_EXT at (273,36) @ 0,0
  Expected: 127 25 229 255
  Observed: 25 229 128 255
Fail with LINEAR and CLAMP at (6,125) @ 0,0
  Expected: 95 82 172 255
  Observed: 19 236 96 255
Fail with LINEAR and CLAMP_TO_BORDER at (95,125) @ 0,0
  Expected: 127 25 229 255
  Observed: 25 229 128 255
Fail with LINEAR and MIRROR_CLAMP_EXT at (184,125) @ 0,0
  Expected: 100 82 192 255
  Observed: 23 236 116 255
Fail with LINEAR and MIRROR_CLAMP_TO_BORDER_EXT at (273,125) @ 0,0
  Expected: 127 25 229 255
  Observed: 25 229 128 255
PIGLIT:subtest {'GL_COMPRESSED_SRGB, swizzled, border color only' : 'fail'}
Testing GL_COMPRESSED_SRGB_ALPHA, swizzled, border color only
Fail with NEAREST and CLAMP_TO_BORDER at (95,36) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with NEAREST and MIRROR_CLAMP_TO_BORDER_EXT at (273,36) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with LINEAR and CLAMP at (6,125) @ 0,0
  Expected: 95 82 172 216
  Observed: 19 236 96 217
Fail with LINEAR and CLAMP_TO_BORDER at (95,125) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with LINEAR and MIRROR_CLAMP_EXT at (184,125) @ 0,0
  Expected: 100 82 192 216
  Observed: 23 236 116 217
Fail with LINEAR and MIRROR_CLAMP_TO_BORDER_EXT at (273,125) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
PIGLIT:subtest {'GL_COMPRESSED_SRGB_ALPHA, swizzled, border color only' : 'fail'}
Testing GL_COMPRESSED_SLUMINANCE, swizzled, border color only
PIGLIT:subtest {'GL_COMPRESSED_SLUMINANCE, swizzled, border color only' : 'pass'}
Testing GL_COMPRESSED_SLUMINANCE_ALPHA, swizzled, border color only
Fail with NEAREST and CLAMP_TO_BORDER at (95,36) @ 0,0
  Expected: 25 25 25 204
  Observed: 25 25 25 26
Fail with NEAREST and MIRROR_CLAMP_TO_BORDER_EXT at (273,36) @ 0,0
  Expected: 25 25 25 204
  Observed: 25 25 25 26
Fail with LINEAR and CLAMP at (6,125) @ 0,0
  Expected: 82 82 82 216
  Observed: 83 83 83 83
Fail with LINEAR and CLAMP_TO_BORDER at (95,125) @ 0,0
  Expected: 25 25 25 204
  Observed: 25 25 25 26
Fail with LINEAR and MIRROR_CLAMP_EXT at (184,125) @ 0,0
  Expected: 82 82 82 216
  Observed: 83 83 83 83
Fail with LINEAR and MIRROR_CLAMP_TO_BORDER_EXT at (273,125) @ 0,0
  Expected: 25 25 25 204
  Observed: 25 25 25 26
PIGLIT:subtest {'GL_COMPRESSED_SLUMINANCE_ALPHA, swizzled, border color only' : 'fail'}
Testing GL_COMPRESSED_SRGB_S3TC_DXT1, swizzled, border color only
Fail with NEAREST and CLAMP_TO_BORDER at (95,36) @ 0,0
  Expected: 127 25 229 255
  Observed: 25 229 128 255
Fail with NEAREST and MIRROR_CLAMP_TO_BORDER_EXT at (273,36) @ 0,0
  Expected: 127 25 229 255
  Observed: 25 229 128 255
Fail with LINEAR and CLAMP at (6,125) @ 0,0
  Expected: 159 82 235 255
  Observed: 83 236 159 255
Fail with LINEAR and CLAMP_TO_BORDER at (95,125) @ 0,0
  Expected: 127 25 229 255
  Observed: 25 229 128 255
Fail with LINEAR and MIRROR_CLAMP_EXT at (184,125) @ 0,0
  Expected: 159 82 235 255
  Observed: 83 236 159 255
Fail with LINEAR and MIRROR_CLAMP_TO_BORDER_EXT at (273,125) @ 0,0
  Expected: 127 25 229 255
  Observed: 25 229 128 255
PIGLIT:subtest {'GL_COMPRESSED_SRGB_S3TC_DXT1, swizzled, border color only' : 'fail'}
Testing GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1, swizzled, border color only
Fail with NEAREST and CLAMP_TO_BORDER at (95,36) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with NEAREST and MIRROR_CLAMP_TO_BORDER_EXT at (273,36) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with LINEAR and CLAMP at (6,125) @ 0,0
  Expected: 159 82 235 216
  Observed: 83 236 159 217
Fail with LINEAR and CLAMP_TO_BORDER at (95,125) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with LINEAR and MIRROR_CLAMP_EXT at (184,125) @ 0,0
  Expected: 159 82 235 216
  Observed: 83 236 159 217
Fail with LINEAR and MIRROR_CLAMP_TO_BORDER_EXT at (273,125) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
PIGLIT:subtest {'GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1, swizzled, border color only' : 'fail'}
Testing GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3, swizzled, border color only
Fail with NEAREST and CLAMP_TO_BORDER at (95,36) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with NEAREST and MIRROR_CLAMP_TO_BORDER_EXT at (273,36) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with LINEAR and CLAMP at (6,125) @ 0,0
  Expected: 159 82 235 216
  Observed: 83 236 159 217
Fail with LINEAR and CLAMP_TO_BORDER at (95,125) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with LINEAR and MIRROR_CLAMP_EXT at (184,125) @ 0,0
  Expected: 159 82 235 216
  Observed: 83 236 159 217
Fail with LINEAR and MIRROR_CLAMP_TO_BORDER_EXT at (273,125) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
PIGLIT:subtest {'GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3, swizzled, border color only' : 'fail'}
Testing GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5, swizzled, border color only
Fail with NEAREST and CLAMP_TO_BORDER at (95,36) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with NEAREST and MIRROR_CLAMP_TO_BORDER_EXT at (273,36) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with LINEAR and CLAMP at (6,125) @ 0,0
  Expected: 159 82 235 216
  Observed: 83 236 159 217
Fail with LINEAR and CLAMP_TO_BORDER at (95,125) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
Fail with LINEAR and MIRROR_CLAMP_EXT at (184,125) @ 0,0
  Expected: 159 82 235 216
  Observed: 83 236 159 217
Fail with LINEAR and MIRROR_CLAMP_TO_BORDER_EXT at (273,125) @ 0,0
  Expected: 127 25 229 204
  Observed: 25 229 128 204
PIGLIT:subtest {'GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5, swizzled, border color only' : 'fail'}
PIGLIT: {'result': 'fail' }


By quick look, except issue which described Pavel, I also see that all values are mixed up.

it has wrong order:
Expected: 1 2 3 4
Observed: 2 3 1 4
Comment 2 Marek Olšák 2014-07-14 21:02:25 UTC
The hardware swizzling of border colors is very broken. Mesa with commit 12b959c351d81a35139ad0e504f6f6896077dbd0 now sets different swizzles for some textures, but the behavior should be equivalent to what it did before. Well, it's not equivalent with a broken hardware design and there is nothing I can do about that (it was reported to hw guys long ago IIRC). That's also the main reason some of the other texwrap tests fail.

I think it's better to keep the commit in git, because it fixes a far more critical issues for some drivers.

Closing.


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.