diff --git a/.pick_status.json b/.pick_status.json index 90897abe417..127a7ddf0b3 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -499,7 +499,7 @@ "description": "zink: always set RESOURCE usage for descriptor buffers", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, diff --git a/src/gallium/drivers/zink/zink_descriptors.c b/src/gallium/drivers/zink/zink_descriptors.c index 765d758c35c..f30c0706cef 100644 --- a/src/gallium/drivers/zink/zink_descriptors.c +++ b/src/gallium/drivers/zink/zink_descriptors.c @@ -1323,7 +1323,9 @@ zink_batch_descriptor_init(struct zink_screen *screen, struct zink_batch_state * for (unsigned i = 0; i < ZINK_DESCRIPTOR_NON_BINDLESS_TYPES; i++) { if (!screen->db_size[i]) continue; - unsigned bind = i == ZINK_DESCRIPTOR_TYPE_SAMPLER_VIEW ? ZINK_BIND_SAMPLER_DESCRIPTOR : ZINK_BIND_RESOURCE_DESCRIPTOR; + unsigned bind = ZINK_BIND_RESOURCE_DESCRIPTOR; + if (i == ZINK_DESCRIPTOR_TYPE_SAMPLER_VIEW) + bind |= ZINK_BIND_SAMPLER_DESCRIPTOR; if (screen->compact_descriptors && i == ZINK_DESCRIPTOR_TYPE_SAMPLER_VIEW) bind |= ZINK_BIND_RESOURCE_DESCRIPTOR; struct pipe_resource *pres = pipe_buffer_create(&screen->base, bind, 0, screen->db_size[i]);