From 1010e2ca89ca4fae1634ba07d508ea354cfa835a Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Wed, 21 Dec 2022 22:39:29 +0200 Subject: [PATCH] anv: handle null push descriptors in deferred optimization MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Lionel Landwerlin Fixes: b49b18f0 ("anv: reduce BT emissions & surface state writes with push descriptors") Reviewed-by: José Roberto de Souza Part-of: (cherry picked from commit 739a08ad2352f1c10bad623350c1e321d0fbc9af) --- .pick_status.json | 2 +- src/intel/vulkan/genX_cmd_buffer.c | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 06fde0d..e427eae 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -580,7 +580,7 @@ "description": "anv: handle null push descriptors in deferred optimization", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "b49b18f0b7acb4c64a0a9fd2ee55aeea868e701d" }, diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index d56f903..17629fb 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -2760,9 +2760,11 @@ flush_push_descriptor_set(struct anv_cmd_buffer *cmd_buffer, struct anv_descriptor *desc = &set->descriptors[desc_idx]; struct anv_buffer_view *bview = desc->set_buffer_view; - bview->surface_state = anv_cmd_buffer_alloc_surface_state(cmd_buffer); - anv_descriptor_write_surface_state(cmd_buffer->device, desc, - bview->surface_state); + if (bview != NULL) { + bview->surface_state = anv_cmd_buffer_alloc_surface_state(cmd_buffer); + anv_descriptor_write_surface_state(cmd_buffer->device, desc, + bview->surface_state); + } } } -- 2.7.4