Bug 69583 - [GM45] piglit.spec.ext_packed_depth_stencil.depthstencil-render-miplevels 1024 s.z24_s8 fails
Summary: [GM45] piglit.spec.ext_packed_depth_stencil.depthstencil-render-miplevels 102...
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Intel 3D Bugs Mailing List
QA Contact: Intel 3D Bugs Mailing List
Keywords: bisected, regression
Depends on:
Reported: 2013-09-19 15:35 UTC by Pavel Ondračka
Modified: 2018-01-10 18:43 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Description Pavel Ondračka 2013-09-19 15:35:18 UTC
This was originally covered by bug 57309, however after the fix two tests are still failing, specifically:
depthstencil-render-miplevels 1024 s=z24_s8
depthstencil-render-miplevels 273 s=z24_s8

First bad commit was commit 52ee1a7269b84b60558760655a4c722d827703d4
Author: Eric Anholt <eric@anholt.net>
Date:   Sun Nov 4 12:47:02 2012 -0800

    i965: Move all the depth/stencil/hiz offset logic into the workaround.
    Given that we have the mask information here (assuming the rebase is to
    the same tiling, which is safe), we can just save a set of miptrees and
    offsets and the global intra-tile offset in the context and cut out a
    bunch of logic.  This will also save emitting the next fix I need to do
    Acked-by: Chad Versace <chad.versace@linux.intel.com>

This commit introduced crash, that was covered in bug 57309, which was fixed by:

commit c8ed9f6262a73849a64c55bcfaac2a50e42e0945
Author: Eric Anholt <eric@anholt.net>
Date:   Mon Nov 26 14:46:11 2012 -0800

    i965/gen4-5: Fix segfaults with stencil-only depth/stencil setups.
    Fixes a ton of piglit regressions since the depthstencil fixes for gen6+.
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57309
    Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
    Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>

So I originally thought there was another unrelated regression between those two patches, however when I go back directly to 52ee1a7269b84b60558760655a4c722d827703d4 and manually apply c8ed9f6262a73849a64c55bcfaac2a50e42e0945 it still fails, so this regression must have been introduced in either the original bad patch or in the fix.

./bin/depthstencil-render-miplevels 1024 s=z24_s8 -auto 
Probing miplevel 0 stencil
Probe stencil at (0, 0)
  Expected: 23
  Observed: 162
Probing miplevel 1 stencil
Probe stencil at (0, 0)
  Expected: 46
  Observed: 0
Probing miplevel 2 stencil
Probe stencil at (0, 0)
  Expected: 70
  Observed: 0
Probing miplevel 3 stencil
Probe stencil at (0, 0)
  Expected: 93
  Observed: 0
Probing miplevel 4 stencil
Probe stencil at (0, 0)
  Expected: 116
  Observed: 0
Probing miplevel 5 stencil
Probe stencil at (0, 0)
  Expected: 139
  Observed: 0
Probing miplevel 6 stencil
Probe stencil at (0, 0)
  Expected: 162
  Observed: 0
Probing miplevel 7 stencil
Probe stencil at (0, 0)
  Expected: 185
  Observed: 0
Probing miplevel 8 stencil
Probe stencil at (0, 0)
  Expected: 209
  Observed: 0
Probing miplevel 9 stencil
Probing miplevel 10 stencil
PIGLIT: {'result': 'fail' }

Mesa: 602d368446e7c97225f98429ffd54b53522c3b36
Kernel: 3.10.11-100.fc18.x86_64
Libdrm: 2.4.45-1.fc18
Comment 1 Kenneth Graunke 2018-01-10 18:43:27 UTC
Supposedly Topi fixed this with:

commit 69672859814f36e9b8756b8f1c4655c49b9f6f4f
Author: Topi Pohjolainen <topi.pohjolainen@intel.com>
Date:   Sun May 21 07:39:07 2017 +0300

    i965/gen4: Set depth offset when there is stencil attachment only
    Current version fails to set depthstencil.depth_offset when there
    is only stencil attachment (it does set the intra tile offsets
    though). Fixes piglits:
    g45,g965,ilk:   depthstencil-render-miplevels 1024 s=z24_s8
    g45,ilk:        depthstencil-render-miplevels 273 s=z24_s8
    CC: mesa-stable@lists.freedesktop.org
    Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
    Signed-off-by: Topi Pohjolainen <topi.pohjolainen@intel.com>

If not, feel free to reopen.

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.