On Tuesday, July 18, 2017 1:46:18 AM PDT Topi Pohjolainen wrote: > There is a functional change: Before update_image_surface() didn't > shift the number of layers for 3D, now it does like > update_texture_image_param() did. > > Signed-off-by: Topi Pohjolainen <topi.pohjolai...@intel.com> > --- > src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 22 +++++++++++++++++++--- > 1 file changed, 19 insertions(+), 3 deletions(-) > > diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c > b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c > index ab6b9cdd29..a8c40d54d8 100644 > --- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c > +++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c > @@ -1632,6 +1632,23 @@ update_buffer_image_param(struct brw_context *brw, > param->stride[0] = _mesa_get_format_bytes(u->_ActualFormat); > } > > +static unsigned > +get_image_num_layers(const struct intel_mipmap_tree *mt, GLenum target, > + unsigned level) > +{ > + if (target == GL_TEXTURE_CUBE_MAP) > + return 6; > + > + if (mt->surf.size > 0) { > + return target == GL_TEXTURE_3D ? > + minify(mt->surf.logical_level0_px.depth, level) : > + mt->surf.logical_level0_px.array_len; > + } > + > + return target == GL_TEXTURE_3D ? > + minify(mt->logical_depth0, level) : mt->logical_depth0; > +} > + > static void > update_image_surface(struct brw_context *brw, > struct gl_image_unit *u, > @@ -1660,9 +1677,8 @@ update_image_surface(struct brw_context *brw, > } else { > struct intel_texture_object *intel_obj = intel_texture_object(obj); > struct intel_mipmap_tree *mt = intel_obj->mt; > - const unsigned num_layers = (!u->Layered ? 1 : > - obj->Target == GL_TEXTURE_CUBE_MAP ? 6 > : > - mt->logical_depth0); > + const unsigned num_layers = u->Layered ? > + get_image_num_layers(mt, obj->Target, u->Level) : 1; > > struct isl_view view = { > .format = format, >
The 3D change here looks like a (good) bug fix...it might make sense to separate that and send it to -stable... Patches 1-8 are: Reviewed-by: Kenneth Graunke <kenn...@whitecape.org>
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev