mirror of
https://github.com/SCST-project/scst.git
synced 2026-08-18 13:16:34 +00:00
qla2x00t-32gbit: edif: Reject AUTH ELS on session down
Reject inflight AUTH ELS if driver is going through session recovery. Link: https://lore.kernel.org/r/20210817051315.2477-3-njavali@marvell.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> [ commit 225479296c4fb2d3449e55b48eca2a9d6aca1e4e upstream ] git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9555 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
@@ -2376,7 +2376,7 @@ void qla24xx_auth_els(scsi_qla_host_t *vha, void **pkt, struct rsp_que **rsp)
|
||||
fcport = qla2x00_find_fcport_by_pid(host, &purex->pur_info.pur_sid);
|
||||
|
||||
if (host->e_dbell.db_flags != EDB_ACTIVE ||
|
||||
(fcport && fcport->loop_id == FC_NO_LOOP_ID)) {
|
||||
(fcport && EDIF_SESSION_DOWN(fcport))) {
|
||||
ql_dbg(ql_dbg_edif, host, 0x0910c, "%s e_dbell.db_flags =%x %06x\n",
|
||||
__func__, host->e_dbell.db_flags,
|
||||
fcport ? fcport->d_id.b24 : 0);
|
||||
|
||||
@@ -127,4 +127,10 @@ struct enode {
|
||||
struct purexevent purexinfo;
|
||||
} u;
|
||||
};
|
||||
|
||||
#define EDIF_SESSION_DOWN(_s) \
|
||||
(_s->disc_state == DSC_DELETE_PEND || \
|
||||
_s->disc_state == DSC_DELETED || \
|
||||
!_s->edif.app_sess_online)
|
||||
|
||||
#endif /* __QLA_EDIF_H */
|
||||
|
||||
@@ -4393,7 +4393,7 @@ qla2x00_mem_alloc(struct qla_hw_data *ha, uint16_t req_len, uint16_t rsp_len,
|
||||
goto fail_elsrej;
|
||||
}
|
||||
ha->elsrej.c->er_cmd = ELS_LS_RJT;
|
||||
ha->elsrej.c->er_reason = ELS_RJT_BUSY;
|
||||
ha->elsrej.c->er_reason = ELS_RJT_LOGIC;
|
||||
ha->elsrej.c->er_explan = ELS_EXPL_UNAB_DATA;
|
||||
return 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user