[SCSI] fc_transport: Generalize WWN to u64 interger conversions.

On some platforms the hard-casting of 8 byte node_name and
port_name arrays to an u64 would cause unaligned-access
warnings. Generalize the conversions with a transport
helper function which performs consistent shifting of WWN
bytes.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>

authored by

Andrew Vasquez and committed by
James Bottomley
218fba00 37be6eeb

+8
+8
include/scsi/scsi_transport_fc.h
··· 439 void fc_remote_port_unblock(struct fc_rport *rport); 440 int scsi_is_fc_rport(const struct device *); 441 442 #endif /* SCSI_TRANSPORT_FC_H */
··· 439 void fc_remote_port_unblock(struct fc_rport *rport); 440 int scsi_is_fc_rport(const struct device *); 441 442 + static inline u64 wwn_to_u64(u8 *wwn) 443 + { 444 + return (u64)wwn[0] << 56 | (u64)wwn[1] << 48 | 445 + (u64)wwn[2] << 40 | (u64)wwn[3] << 32 | 446 + (u64)wwn[4] << 24 | (u64)wwn[5] << 16 | 447 + (u64)wwn[6] << 8 | (u64)wwn[7]; 448 + } 449 + 450 #endif /* SCSI_TRANSPORT_FC_H */