scsi: qla2xxx: edif: Fix clang warning
Silence compile warning due to unaligned memory access. qla_edif.c:713:45: warning: taking address of packed member 'u' of class or structure 'auth_complete_cmd' may result in an unaligned pointer value [-Waddress-of-packed-member] fcport = qla2x00_find_fcport_by_pid(vha, &appplogiok.u.d_id); Link: https://lore.kernel.org/r/20220110050218.3958-13-njavali@marvell.com Cc: stable@vger.kernel.org Reported-by: kernel test robot <lkp@intel.com> Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com> Signed-off-by: Quinn Tran <qutran@marvell.com> Signed-off-by: Nilesh Javali <njavali@marvell.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
14cb838d24
commit
73825fd7a3
|
@ -668,6 +668,11 @@ qla_edif_app_authok(scsi_qla_host_t *vha, struct bsg_job *bsg_job)
|
|||
bsg_job->request_payload.sg_cnt, &appplogiok,
|
||||
sizeof(struct auth_complete_cmd));
|
||||
|
||||
/* silent unaligned access warning */
|
||||
portid.b.domain = appplogiok.u.d_id.b.domain;
|
||||
portid.b.area = appplogiok.u.d_id.b.area;
|
||||
portid.b.al_pa = appplogiok.u.d_id.b.al_pa;
|
||||
|
||||
switch (appplogiok.type) {
|
||||
case PL_TYPE_WWPN:
|
||||
fcport = qla2x00_find_fcport_by_wwpn(vha,
|
||||
|
@ -678,7 +683,7 @@ qla_edif_app_authok(scsi_qla_host_t *vha, struct bsg_job *bsg_job)
|
|||
__func__, appplogiok.u.wwpn);
|
||||
break;
|
||||
case PL_TYPE_DID:
|
||||
fcport = qla2x00_find_fcport_by_pid(vha, &appplogiok.u.d_id);
|
||||
fcport = qla2x00_find_fcport_by_pid(vha, &portid);
|
||||
if (!fcport)
|
||||
ql_dbg(ql_dbg_edif, vha, 0x911d,
|
||||
"%s d_id lookup failed: %x\n", __func__,
|
||||
|
@ -777,6 +782,11 @@ qla_edif_app_authfail(scsi_qla_host_t *vha, struct bsg_job *bsg_job)
|
|||
bsg_job->request_payload.sg_cnt, &appplogifail,
|
||||
sizeof(struct auth_complete_cmd));
|
||||
|
||||
/* silent unaligned access warning */
|
||||
portid.b.domain = appplogifail.u.d_id.b.domain;
|
||||
portid.b.area = appplogifail.u.d_id.b.area;
|
||||
portid.b.al_pa = appplogifail.u.d_id.b.al_pa;
|
||||
|
||||
/*
|
||||
* TODO: edif: app has failed this plogi. Inform driver to
|
||||
* take any action (if any).
|
||||
|
@ -788,7 +798,7 @@ qla_edif_app_authfail(scsi_qla_host_t *vha, struct bsg_job *bsg_job)
|
|||
SET_DID_STATUS(bsg_reply->result, DID_OK);
|
||||
break;
|
||||
case PL_TYPE_DID:
|
||||
fcport = qla2x00_find_fcport_by_pid(vha, &appplogifail.u.d_id);
|
||||
fcport = qla2x00_find_fcport_by_pid(vha, &portid);
|
||||
if (!fcport)
|
||||
ql_dbg(ql_dbg_edif, vha, 0x911d,
|
||||
"%s d_id lookup failed: %x\n", __func__,
|
||||
|
@ -1253,6 +1263,7 @@ qla24xx_sadb_update(struct bsg_job *bsg_job)
|
|||
int result = 0;
|
||||
struct qla_sa_update_frame sa_frame;
|
||||
struct srb_iocb *iocb_cmd;
|
||||
port_id_t portid;
|
||||
|
||||
ql_dbg(ql_dbg_edif + ql_dbg_verbose, vha, 0x911d,
|
||||
"%s entered, vha: 0x%p\n", __func__, vha);
|
||||
|
@ -1276,7 +1287,12 @@ qla24xx_sadb_update(struct bsg_job *bsg_job)
|
|||
goto done;
|
||||
}
|
||||
|
||||
fcport = qla2x00_find_fcport_by_pid(vha, &sa_frame.port_id);
|
||||
/* silent unaligned access warning */
|
||||
portid.b.domain = sa_frame.port_id.b.domain;
|
||||
portid.b.area = sa_frame.port_id.b.area;
|
||||
portid.b.al_pa = sa_frame.port_id.b.al_pa;
|
||||
|
||||
fcport = qla2x00_find_fcport_by_pid(vha, &portid);
|
||||
if (fcport) {
|
||||
found = 1;
|
||||
if (sa_frame.flags == QLA_SA_UPDATE_FLAGS_TX_KEY)
|
||||
|
|
Loading…
Reference in New Issue