On Tue, Jun 13, 2017 at 05:50:03PM +0300, Topi Pohjolainen wrote: > Signed-off-by: Topi Pohjolainen <topi.pohjolai...@intel.com> > --- > src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > index 061860cdf6..f44bac988f 100644 > --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c > @@ -1087,6 +1087,21 @@ intel_miptree_match_image(struct intel_mipmap_tree *mt, > if (mt->target == GL_TEXTURE_CUBE_MAP) > depth = 6; > > + if (mt->surf.size > 0) { > + if (level >= mt->surf.levels) > + return false; > + > + const unsigned level_depth = > + mt->surf.dim == ISL_SURF_DIM_3D ? > + minify(mt->surf.logical_level0_px.depth, level) :
We should be looking up the physical depth shouldn't we? I haven't yet looked into what width or height should be. I'm done for today, so I will revisit this series tomorrow. > + mt->surf.logical_level0_px.array_len; > + > + return width == minify(mt->surf.logical_level0_px.width, level) && > + height == minify(mt->surf.logical_level0_px.height, level) && > + depth == level_depth && > + MAX2(image->NumSamples, 1) == mt->surf.samples; > + } > + > int level_depth = mt->level[level].depth; > if (mt->num_samples > 1) { > switch (mt->msaa_layout) { > -- > 2.11.0 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev