use pragma pack around dmub_addr definition
authorjsg <jsg@openbsd.org>
Tue, 14 Feb 2023 11:31:47 +0000 (11:31 +0000)
committerjsg <jsg@openbsd.org>
Tue, 14 Feb 2023 11:31:47 +0000 (11:31 +0000)
Avoids warnings about alignment changing when embedded inside of a
packed struct (dmub_rb_cmd_mall) seen with clang 15 on arm64.

reported and compile tested by tb@
sent upstream to amd-gfx list

sys/dev/pci/drm/amd/display/dmub/inc/dmub_cmd.h

index 7a8f615..1bc2832 100644 (file)
@@ -162,6 +162,7 @@ extern "C" {
 #define dmub_udelay(microseconds) udelay(microseconds)
 #endif
 
+#pragma pack(push, 1)
 /**
  * union dmub_addr - DMUB physical/virtual 64-bit address.
  */
@@ -172,6 +173,7 @@ union dmub_addr {
        } u; /*<< Low/high bit access */
        uint64_t quad_part; /*<< 64 bit address */
 };
+#pragma pack(pop)
 
 /**
  * Dirty rect definition.