[Mesa-dev] [PATCH] anv: ensure that we do not emit negative Depth in 3DSTATE_DEPTH_BUFFER
Iago Toral
itoral at igalia.com
Thu Feb 23 11:10:40 UTC 2017
On Wed, 2017-02-22 at 09:38 -0800, Jason Ekstrand wrote:
> On Wed, Feb 22, 2017 at 6:45 AM, Iago Toral Quiroga <itoral at igalia.co
> m> wrote:
> > This fixes a number of new CTS tests that would crash otherwise:
> > dEQP-VK.pipeline.render_to_image.*
> > ---
> > src/intel/vulkan/genX_cmd_buffer.c | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/src/intel/vulkan/genX_cmd_buffer.c
> > b/src/intel/vulkan/genX_cmd_buffer.c
> > index 40a72f4..cdd4501 100644
> > --- a/src/intel/vulkan/genX_cmd_buffer.c
> > +++ b/src/intel/vulkan/genX_cmd_buffer.c
> > @@ -2270,7 +2270,8 @@ cmd_buffer_emit_depth_stencil(struct
> > anv_cmd_buffer *cmd_buffer)
> > assert(image->depth_surface.isl.dim != ISL_SURF_DIM_3D);
> > db.Depth =
> > db.RenderTargetViewExtent =
> > - iview->isl.array_len - iview->isl.base_array_layer -
> > 1;
> > + iview->isl.array_len <= iview->isl.base_array_layer
> > + ? 0 : iview->isl.array_len - iview-
> > >isl.base_array_layer - 1;
> I think both the old code and the new code is broken. :( I believe
> what we actually want here is just array_len; we don't want to
> subtract base_array_layer.
>
> Does using just iview->isl.array_len fix the issue?
Yes it does and there are no regressions according to jenkins. I'll
send a v2 with that change.
Iago
> >
> > #if GEN_GEN >= 8
> > db.SurfaceQPitch =
> > --
> > 2.7.4
> >
> > _______________________________________________
> > mesa-dev mailing list
> > mesa-dev at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> >
More information about the mesa-dev
mailing list