Bug 53522 - [Bisected i965]Piglit fbo/fbo-depth-array regressed
Summary: [Bisected i965]Piglit fbo/fbo-depth-array regressed
Status: VERIFIED DUPLICATE of bug 49668
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: 8.0
Hardware: All Linux (All)
: medium major
Assignee: Paul Berry
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-08-15 03:27 UTC by lu hua
Modified: 2015-06-16 08:30 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description lu hua 2012-08-15 03:27:34 UTC
System Environment:
--------------------------
Arch:             x86_64
Platform:         Sandybridge
Libdrm:	(master)libdrm-2.4.38-3-g3163cfe4db925429760407e77140e2d595338bc2
Mesa:	(8.0)889cc4d9225084e15b9e8d010e30b31a87dbfd2d
Xserver:(server-1.12-branch)xorg-server-1.12.3.901
Xf86_video_intel:(master)2.20.3-35-g2f4de90709264ad19a3e3f5f0f79f4bba78a760a
Libva:	(master)44b03ffcdb814392a9acf025615f99a06fed63d4
Libva_intel_driver:(master)5a449f5d2608adaf29c4c052aa28687d9e80a37a
Kernel:	(drm-intel-fixes) 4344b813f105a19f793f1fd93ad775b784648b95

Bug detailed description:
-----------------------------
It fails on ivybridge, sandybridge and ironlake with mesa 8.0 branch. It has Bug 49668 on mesa master branch.

Following case also fail and have same bisect:
spec_ARB_depth_buffer_float_fbo-clear-formats
spec_ARB_depth_texture_fbo-clear-formats
spec_EXT_packed_depth_stencil_fbo-clear-formats
texturing_depthstencil-render-miplevels_1024_d=z16
texturing_depthstencil-render-miplevels_1024_d=z32f_s8
texturing_depthstencil-render-miplevels_146_d=z32f_s8
texturing_depthstencil-render-miplevels_292_d=z16
texturing_depthstencil-render-miplevels_585_d=z16

Bisect shows 24db6d63dab7cc8d3e5d4482b95d58e46113ba44 is the first bad commit.
commit 24db6d63dab7cc8d3e5d4482b95d58e46113ba44
Author:     Paul Berry <stereotype441@gmail.com>
AuthorDate: Thu Apr 26 06:35:56 2012 -0700
Commit:     Paul Berry <stereotype441@gmail.com>
CommitDate: Sun Aug 5 08:17:51 2012 -0700

    i965/Gen6: Work around GPU hangs due to misaligned depth coordinate offsets.

    In i965 Gen6, Mesa has for a long time used the "depth coordinate
    offset X/Y" settings (in 3DSTATE_DEPTH_BUFFER) to cause the GPU to
    render to miplevels other than 0.  Unfortunately, this doesn't work,
    because these offsets must be aligned to multiples of 8, and miplevels
    in the depth buffer are only guaranteed to be aligned to multiples of
    4.  When the offsets aren't aligned to a multiple of 8, the GPU
    sometimes hangs.

    As a temporary measure, to avoid GPU hangs, this patch smashes the 3
    LSB's of "depth coordinate offset X/Y" to 0.  This results in
    incorrect rendering to mipmapped depth textures, but that seems like a
    reasonable stopgap while we figure out a better solution.

    (Note that we have only ever observed this GPU hang on Gen6 when HiZ
    is enabled, so another possible stopgap would be to disable HiZ).

    Avoids GPU hangs in piglit test "depthstencil-render-miplevels" at
    texture sizes that are not powers of 2.

    Reviewed-by: Chad Verace <chad.versace@linux.intel.com>

    Cherry-picked from a683012a80a3408b3b71f22b2a97d9eaaac11a46
    Conflicts:

        src/mesa/drivers/dri/i965/brw_misc_state.c

    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50271

Reproduce steps:
----------------------------
1. start X
2. ./bin/fbo-depth-array -auto
Comment 1 lu hua 2012-08-15 03:37:05 UTC
Following cases also fail on ironlake with mesa 8.0 branch. 
bisect shows commit 24db6d63dab7cc8d3e5d4482b95d58e46113ba44 is the first bad commit.

texturing_depthstencil-render-miplevels_1024_ds=z24_s8
texturing_depthstencil-render-miplevels_1024_ds=z32f_s8
texturing_depthstencil-render-miplevels_1024_d=z16
texturing_depthstencil-render-miplevels_1024_d=z24
texturing_depthstencil-render-miplevels_1024_d=z24_s8
texturing_depthstencil-render-miplevels_1024_d=z32f
texturing_depthstencil-render-miplevels_1024_d=z32f_s8
texturing_depthstencil-render-miplevels_1024_s=z24_s8
texturing_depthstencil-render-miplevels_146_ds=z24_s8
texturing_depthstencil-render-miplevels_146_ds=z32f_s8
texturing_depthstencil-render-miplevels_146_d=z16
texturing_depthstencil-render-miplevels_146_d=z24
texturing_depthstencil-render-miplevels_146_d=z24_s8
texturing_depthstencil-render-miplevels_146_d=z32f
texturing_depthstencil-render-miplevels_146_d=z32f_s8
texturing_depthstencil-render-miplevels_146_s=z24_s8
texturing_depthstencil-render-miplevels_292_ds=z24_s8
texturing_depthstencil-render-miplevels_292_ds=z32f_s8
texturing_depthstencil-render-miplevels_292_d=z16
texturing_depthstencil-render-miplevels_292_d=z24
texturing_depthstencil-render-miplevels_292_d=z24_s8
texturing_depthstencil-render-miplevels_292_d=z32f
texturing_depthstencil-render-miplevels_292_d=z32f_s8
texturing_depthstencil-render-miplevels_292_s=z24_s8
texturing_depthstencil-render-miplevels_585_ds=z24_s8
texturing_depthstencil-render-miplevels_585_ds=z32f_s8
texturing_depthstencil-render-miplevels_585_d=z16
texturing_depthstencil-render-miplevels_585_d=z24
texturing_depthstencil-render-miplevels_585_d=z24_s8
texturing_depthstencil-render-miplevels_585_d=z32f
texturing_depthstencil-render-miplevels_585_d=z32f_s8
texturing_depthstencil-render-miplevels_585_s=z24_s8
Comment 2 lu hua 2012-08-15 04:56:46 UTC
run: ./bin/fbo-depth-array -auto
Output:
Probe at (34,29)
  Expected: 0.200000 0.200000 0.200000
  Observed: 0.000000 0.000000 0.000000
Probe at (100,29)
  Expected: 0.600000 0.600000 0.600000
  Observed: 0.000000 0.000000 0.000000
Probe at (166,29)
  Expected: 1.000000 1.000000 1.000000
  Observed: 0.000000 0.000000 0.000000
PIGLIT: {'result': 'fail' }
Comment 3 Paul Berry 2012-08-15 13:25:35 UTC

*** This bug has been marked as a duplicate of bug 50271 ***
Comment 4 Gordon Jin 2012-08-16 07:40:47 UTC
I think it should be marked as dup with bug#49668

*** This bug has been marked as a duplicate of bug 49668 ***


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.