mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-27 10:08:13 +02:00
radv: Do not hash vk_object_base in descriptor set layout.
It contains potentially pointer-y stuff. Fixes:178adfa6a8("radv: use the base object struct types") Acked-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8809> (cherry picked from commit1eaefe6cfd)
This commit is contained in:
parent
78107eaaac
commit
6753936d0e
2 changed files with 8 additions and 2 deletions
|
|
@ -1687,7 +1687,7 @@
|
|||
"description": "radv: Do not hash vk_object_base in descriptor set layout.",
|
||||
"nominated": true,
|
||||
"nomination_type": 1,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"master_sha": null,
|
||||
"because_sha": "178adfa6a8e5694a077c3e11fdcc5bc0802839ab"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -504,7 +504,13 @@ VkResult radv_CreatePipelineLayout(
|
|||
}
|
||||
dynamic_offset_count += layout->set[set].dynamic_offset_count;
|
||||
dynamic_shader_stages |= layout->set[set].dynamic_offset_stages;
|
||||
_mesa_sha1_update(&ctx, set_layout, set_layout->layout_size);
|
||||
|
||||
/* Hash the entire set layout except for the vk_object_base. The
|
||||
* rest of the set layout is carefully constructed to not have
|
||||
* pointers so a full hash instead of a per-field hash should be ok. */
|
||||
_mesa_sha1_update(&ctx,
|
||||
(const char*)set_layout + sizeof(struct vk_object_base),
|
||||
set_layout->layout_size - sizeof(struct vk_object_base));
|
||||
}
|
||||
|
||||
layout->dynamic_offset_count = dynamic_offset_count;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue