On 2/8/19 9:22 AM, Shivasharan S wrote:
Add padding to make the structure variables in MR_HOST_DEVICE_LIST_ENTRY
64-bit aligned.
Also, add reserved fields to MR_HOST_DEVICE_LIST for future firmware usage.

Signed-off-by: Shivasharan S <[email protected]>
---
  drivers/scsi/megaraid/megaraid_sas.h | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/scsi/megaraid/megaraid_sas.h 
b/drivers/scsi/megaraid/megaraid_sas.h
index fe1173f02c54..eb48ca17dca0 100644
--- a/drivers/scsi/megaraid/megaraid_sas.h
+++ b/drivers/scsi/megaraid/megaraid_sas.h
@@ -807,13 +807,14 @@ struct MR_HOST_DEVICE_LIST_ENTRY {
        } flags;
        u8 scsi_type;
        __le16 target_id;
-       u8 reserved[2];
+       u8 reserved[4];
        __le64 sas_addr[2];
  } __packed;
struct MR_HOST_DEVICE_LIST {
        __le32                  size;
        __le32                  count;
+       __le32                  reserved[2];
        struct MR_HOST_DEVICE_LIST_ENTRY        host_device_list[1];
  } __packed;
Ho-hum.

Move fields in a structure used for communication with the HBA?
How is that supposed to work?
Do we need a firmware update for the HBA to handle this correctly?
Or did it never work, and we need the padding to retrieve the information correctly?

Please clarify.

Cheers,

Hannes
--
Dr. Hannes Reinecke                Teamlead Storage & Networking
[email protected]                                   +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)

Reply via email to