From ad2384db21061393090204aff2f037bd886d9a08 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Mon, 16 Mar 2026 13:04:41 -0400 Subject: [PATCH] mesa/renderbuffer: always add PIPE_BIND_SAMPLER_VIEW to rendering textures MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit this fixes expectations around e.g., using u_blitter to copy textures cc: mesa-stable Reviewed-by: Marek Olšák (cherry picked from commit 929eb9a021110a41860a84e4728e67b4fd625dea) Part-of: --- .pick_status.json | 2 +- src/gallium/drivers/virgl/ci/virgl-gles-fails.txt | 4 ++++ src/mesa/main/renderbuffer.c | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.pick_status.json b/.pick_status.json index 46ca1a37912..cd983e9beae 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -5224,7 +5224,7 @@ "description": "mesa/renderbuffer: always add PIPE_BIND_SAMPLER_VIEW to rendering textures", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/gallium/drivers/virgl/ci/virgl-gles-fails.txt b/src/gallium/drivers/virgl/ci/virgl-gles-fails.txt index 0b83613ab71..29bd93feae4 100644 --- a/src/gallium/drivers/virgl/ci/virgl-gles-fails.txt +++ b/src/gallium/drivers/virgl/ci/virgl-gles-fails.txt @@ -203,3 +203,7 @@ dEQP-GLES31.functional.primitive_bounding_box.triangles.global_state.vertex_tess dEQP-GLES31.functional.primitive_bounding_box.wide_lines.global_state.vertex_tessellation_geometry_fragment.fbo_bbox_smaller,Fail dEQP-GLES31.functional.srgb_texture_decode.skip_decode.sr8.using_sampler,Fail KHR-GL32.framebuffer_blit.multisampled_to_singlesampled_blit_depth_config_test,Fail + +# !40444 +KHR-GL32.packed_depth_stencil.blit.depth24_stencil8,Fail +KHR-GL32.packed_depth_stencil.blit.depth32f_stencil8,Fail diff --git a/src/mesa/main/renderbuffer.c b/src/mesa/main/renderbuffer.c index 6574be0d60a..eb4701f4041 100644 --- a/src/mesa/main/renderbuffer.c +++ b/src/mesa/main/renderbuffer.c @@ -273,6 +273,8 @@ renderbuffer_alloc_storage(struct gl_context * ctx, PIPE_BIND_RENDER_TARGET); } + templ.bind |= PIPE_BIND_SAMPLER_VIEW; + rb->texture = screen->resource_create(screen, &templ); if (!rb->texture)