Maybe st/mesa should clamp the level instead of assert. Marek
On Thu, Mar 1, 2018 at 7:23 AM, Ilia Mirkin <imir...@alum.mit.edu> wrote: > Yes, as I mentioned this makes some tests assert. > > They were passing before, but it was through luck since the actual images > were never accessed. > > On Mar 1, 2018 04:04, "Timothy Arceri" <tarc...@itsqueeze.com> wrote: >> >> This causes the CTS tests to assert on radeonsi where they previously >> passed. If that expected? >> >> On 27/02/18 16:19, Ilia Mirkin wrote: >>> >>> Ideally the st_finalize_texture call would take care of that, but it >>> doesn't seem to with KHR-GL45.shader_image_size.advanced-nonMS-*. This >>> assertions makes sure that no such values are passed to the driver. >>> >>> Signed-off-by: Ilia Mirkin <imir...@alum.mit.edu> >>> --- >>> >>> This will trigger asserts in CTS, but I think that's better than feeding >>> broken values to driver backends. >>> >>> src/mesa/state_tracker/st_atom_image.c | 1 + >>> 1 file changed, 1 insertion(+) >>> >>> diff --git a/src/mesa/state_tracker/st_atom_image.c >>> b/src/mesa/state_tracker/st_atom_image.c >>> index 1c4980173f4..421c926cf04 100644 >>> --- a/src/mesa/state_tracker/st_atom_image.c >>> +++ b/src/mesa/state_tracker/st_atom_image.c >>> @@ -97,6 +97,7 @@ st_convert_image(const struct st_context *st, const >>> struct gl_image_unit *u, >>> img->resource = stObj->pt; >>> img->u.tex.level = u->Level + stObj->base.MinLevel; >>> + assert(img->u.tex.level <= img->resource->last_level); >>> if (stObj->pt->target == PIPE_TEXTURE_3D) { >>> if (u->Layered) { >>> img->u.tex.first_layer = 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