Module: Mesa
Branch: main
Commit: 7fc259e4e7ad5afb131a575674d52937c5566a64
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7fc259e4e7ad5afb131a575674d52937c5566a64

Author: Daniel Schürmann <[email protected]>
Date:   Thu Apr 27 15:24:55 2023 +0200

radv: add padding to radv_shader_binary_legacy

This fixes an alignment mismatch in radv_shader_serialize()

Fixes: 577d76f60f788c3a8d43b4b388bb5a04e4e64994 ('radv: add 
radv_shader_serialize() and radv_shader_deserialize() functions')
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22735>

---

 src/amd/vulkan/radv_shader.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/amd/vulkan/radv_shader.h b/src/amd/vulkan/radv_shader.h
index a46f2170301..4941d43219a 100644
--- a/src/amd/vulkan/radv_shader.h
+++ b/src/amd/vulkan/radv_shader.h
@@ -450,11 +450,15 @@ struct radv_shader_binary_legacy {
    uint32_t ir_size;
    uint32_t disasm_size;
    uint32_t stats_size;
+   uint32_t padding;
 
    /* data has size of stats_size + code_size + ir_size + disasm_size + 2,
     * where the +2 is for 0 of the ir strings. */
    uint8_t data[0];
 };
+static_assert(sizeof(struct radv_shader_binary_legacy) ==
+                 offsetof(struct radv_shader_binary_legacy, data),
+              "Unexpected padding");
 
 struct radv_shader_binary_rtld {
    struct radv_shader_binary base;

Reply via email to