habanalabs: Fix alignment issue in cpucp_info structure
authorOfir Bitton <obitton@habana.ai>
Fri, 4 Sep 2020 18:33:53 +0000 (21:33 +0300)
committerOded Gabbay <oded.gabbay@gmail.com>
Tue, 22 Sep 2020 15:49:52 +0000 (18:49 +0300)
commit763a0b4d81f60beb835dc3e8991aa9e1ed9f71b1
tree5fc488039c46b55088d3abc6f6a0b7c35bec730f
parentae926514dd62673bc1a2513e5271d1d6d3d473b5
habanalabs: Fix alignment issue in cpucp_info structure

Because the device CPU compiler aligns structures to 8 bytes,
struct cpucp_info has an alignment issue as some parts
in the structure are not aligned to 8 bytes.
It is preferred that we explicitly insert placeholders inside
the structure to avoid confusion

in order to validate this scenario, we printed both pointers:

__u8 cpucp_version[VERSION_MAX_LEN]; (0xffff899c67ed4cbc)
__le64 dram_size;                    (0xffff899c67ed4d40)

we see difference of 132 bytes although the first array
is only 128 bytes long, Meaning compiler added a 4 byte padding.

Signed-off-by: Ofir Bitton <obitton@habana.ai>
Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com>
Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
drivers/misc/habanalabs/include/common/cpucp_if.h