Module: Mesa Branch: main Commit: 3de78fb3c8a827b38d4a1f57b4340d1850690bb6 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3de78fb3c8a827b38d4a1f57b4340d1850690bb6
Author: Mike Blumenkrantz <[email protected]> Date: Thu May 5 12:06:14 2022 -0400 kopper: invalidate drawables when resizing textures in place this guarantees that swapchains shared between contexts will stay in sync Reviewed-by: Adam Jackson <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16351> --- src/gallium/frontends/dri/kopper.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/frontends/dri/kopper.c b/src/gallium/frontends/dri/kopper.c index 452daf087ef..b7e84ff3156 100644 --- a/src/gallium/frontends/dri/kopper.c +++ b/src/gallium/frontends/dri/kopper.c @@ -559,6 +559,8 @@ kopper_allocate_textures(struct dri_context *ctx, if (drawable->textures[i] && i < ST_ATTACHMENT_DEPTH_STENCIL && !is_pixmap) { drawable->textures[i]->width0 = width; drawable->textures[i]->height0 = height; + /* force all contexts to revalidate framebuffer */ + p_atomic_inc(&drawable->base.stamp); } else pipe_resource_reference(&drawable->textures[i], NULL); pipe_resource_reference(&drawable->msaa_textures[i], NULL);
