diff options
author | Samuel Pitoiset <samuel.pitoiset@gmail.com> | 2022-12-09 15:59:52 +0100 |
---|---|---|
committer | Eric Engestrom <eric@engestrom.ch> | 2022-12-14 20:47:02 +0000 |
commit | 5e0dfcb9c712a468b11b5dcad77aa878c8445ddc (patch) | |
tree | 7159e8d80c6020a80b9151fed66958701705e22c | |
parent | 57827e69036ae963272c6880729ac990b9ed22af (diff) | |
download | mesa-5e0dfcb9c712a468b11b5dcad77aa878c8445ddc.tar.gz |
radv: fix hashing descriptor set layout
Shouldn't have pointers.
Fixes: 19f8d338761 ("radv: Use vk_descriptor_set_layout")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20250>
(cherry picked from commit 13f39da71a69026445fc5455d749858aa7ad94dc)
-rw-r--r-- | .pick_status.json | 2 | ||||
-rw-r--r-- | src/amd/vulkan/radv_descriptor_set.c | 8 |
2 files changed, 5 insertions, 5 deletions
diff --git a/.pick_status.json b/.pick_status.json index 46418079807..f7c68571f61 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1210,7 +1210,7 @@ "description": "radv: fix hashing descriptor set layout", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "19f8d338761d124b24eac2d4703dc1346c8b4f9f" }, diff --git a/src/amd/vulkan/radv_descriptor_set.c b/src/amd/vulkan/radv_descriptor_set.c index a59c67e4c54..4a5481da8c1 100644 --- a/src/amd/vulkan/radv_descriptor_set.c +++ b/src/amd/vulkan/radv_descriptor_set.c @@ -516,11 +516,11 @@ radv_pipeline_layout_hash(struct radv_pipeline_layout *layout) if (!set_layout) continue; - /* Hash the entire set layout except for the vk_object_base and the reference counter. 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. + /* Hash the entire set layout except vk_descriptor_set_layout. 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. */ - uint32_t hash_offset = sizeof(struct vk_object_base) + sizeof(uint32_t); + uint32_t hash_offset = sizeof(struct vk_descriptor_set_layout); _mesa_sha1_update(&ctx, (const char *)set_layout + hash_offset, set_layout->layout_size - hash_offset); } |