Mesa (main): ac/rgp: fix alignment of code object records to follow the RGP spec

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Nov 9 10:12:42 UTC 2021


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

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Mon Nov  8 15:01:10 2021 +0100

ac/rgp: fix alignment of code object records to follow the RGP spec

Should be aligned to 4 bytes.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13711>

---

 src/amd/common/ac_rgp.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/amd/common/ac_rgp.c b/src/amd/common/ac_rgp.c
index f82bd59b5b7..354fe56560e 100644
--- a/src/amd/common/ac_rgp.c
+++ b/src/amd/common/ac_rgp.c
@@ -860,12 +860,13 @@ static void ac_sqtt_dump_data(struct radeon_info *rad_info,
          ac_rgp_file_write_elf_object(output, file_offset +
                                       sizeof(struct sqtt_code_object_database_record),
                                       record, &elf_size_calc, flags);
-         code_object_record.size = elf_size_calc;
+         /* Align to 4 bytes per the RGP file spec. */
+         code_object_record.size = ALIGN(elf_size_calc, 4);
          fseek(output, file_offset, SEEK_SET);
          fwrite(&code_object_record, sizeof(struct sqtt_code_object_database_record),
                 1, output);
          file_offset += (sizeof(struct sqtt_code_object_database_record) +
-                         elf_size_calc);
+                         code_object_record.size);
          fseek(output, file_offset, SEEK_SET);
       }
       ac_sqtt_fill_code_object(rgp_code_object, &code_object,



More information about the mesa-commit mailing list