diff --git a/.pick_status.json b/.pick_status.json index 816eb80c914..22c4cf03740 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1939,7 +1939,7 @@ "description": "pvr: Fix seg fault on empty descriptor set", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "ce67f5ac944bdc6ebf27e3b115706bec5b63f002" }, diff --git a/src/imagination/vulkan/pvr_cmd_buffer.c b/src/imagination/vulkan/pvr_cmd_buffer.c index 7a01b544711..72c5da861ae 100644 --- a/src/imagination/vulkan/pvr_cmd_buffer.c +++ b/src/imagination/vulkan/pvr_cmd_buffer.c @@ -3571,6 +3571,10 @@ pvr_cmd_buffer_upload_desc_set_table(struct pvr_cmd_buffer *const cmd_buffer, desc_set = desc_state->descriptor_sets[set]; + /* TODO: Is it better if we don't set the valid_mask for empty sets? */ + if (desc_set->layout->descriptor_count == 0) + continue; + if (desc_set->layout->dynamic_buffer_count > 0) { struct pvr_bo *new_desc_set_bo;