mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-30 06:06:47 +07:00
[SCSI] qla2xxx: Correct mis-handling of AENs.
A regression in a recent change
33135aa2a5
caused the driver
to mistakenly drop handling of AENs. Due to the incorrect
handling, ports would not reappear after RSCNs and LIPs.
Drops unused/incorrect compound #define from qla_def.h.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
parent
bb58596f68
commit
23443b1d61
@ -2476,17 +2476,9 @@ typedef struct scsi_qla_host {
|
|||||||
*/
|
*/
|
||||||
#define LOOP_TRANSITION(ha) \
|
#define LOOP_TRANSITION(ha) \
|
||||||
(test_bit(ISP_ABORT_NEEDED, &ha->dpc_flags) || \
|
(test_bit(ISP_ABORT_NEEDED, &ha->dpc_flags) || \
|
||||||
test_bit(LOOP_RESYNC_NEEDED, &ha->dpc_flags))
|
|
||||||
|
|
||||||
#define LOOP_NOT_READY(ha) \
|
|
||||||
((test_bit(ISP_ABORT_NEEDED, &ha->dpc_flags) || \
|
|
||||||
test_bit(ABORT_ISP_ACTIVE, &ha->dpc_flags) || \
|
|
||||||
test_bit(LOOP_RESYNC_NEEDED, &ha->dpc_flags) || \
|
test_bit(LOOP_RESYNC_NEEDED, &ha->dpc_flags) || \
|
||||||
test_bit(LOOP_RESYNC_ACTIVE, &ha->dpc_flags)) || \
|
|
||||||
atomic_read(&ha->loop_state) == LOOP_DOWN)
|
atomic_read(&ha->loop_state) == LOOP_DOWN)
|
||||||
|
|
||||||
#define LOOP_RDY(ha) (!LOOP_NOT_READY(ha))
|
|
||||||
|
|
||||||
#define TGT_Q(ha, t) (ha->otgt[t])
|
#define TGT_Q(ha, t) (ha->otgt[t])
|
||||||
|
|
||||||
#define to_qla_host(x) ((scsi_qla_host_t *) (x)->hostdata)
|
#define to_qla_host(x) ((scsi_qla_host_t *) (x)->hostdata)
|
||||||
|
@ -1259,7 +1259,7 @@ qla2x00_configure_hba(scsi_qla_host_t *ha)
|
|||||||
rval = qla2x00_get_adapter_id(ha,
|
rval = qla2x00_get_adapter_id(ha,
|
||||||
&loop_id, &al_pa, &area, &domain, &topo);
|
&loop_id, &al_pa, &area, &domain, &topo);
|
||||||
if (rval != QLA_SUCCESS) {
|
if (rval != QLA_SUCCESS) {
|
||||||
if (LOOP_NOT_READY(ha) || atomic_read(&ha->loop_down_timer) ||
|
if (LOOP_TRANSITION(ha) || atomic_read(&ha->loop_down_timer) ||
|
||||||
(rval == QLA_COMMAND_ERROR && loop_id == 0x7)) {
|
(rval == QLA_COMMAND_ERROR && loop_id == 0x7)) {
|
||||||
DEBUG2(printk("%s(%ld) Loop is in a transition state\n",
|
DEBUG2(printk("%s(%ld) Loop is in a transition state\n",
|
||||||
__func__, ha->host_no));
|
__func__, ha->host_no));
|
||||||
@ -1796,7 +1796,7 @@ qla2x00_configure_loop(scsi_qla_host_t *ha)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (rval == QLA_SUCCESS && test_bit(RSCN_UPDATE, &flags)) {
|
if (rval == QLA_SUCCESS && test_bit(RSCN_UPDATE, &flags)) {
|
||||||
if (LOOP_NOT_READY(ha)) {
|
if (LOOP_TRANSITION(ha)) {
|
||||||
rval = QLA_FUNCTION_FAILED;
|
rval = QLA_FUNCTION_FAILED;
|
||||||
} else {
|
} else {
|
||||||
rval = qla2x00_configure_fabric(ha);
|
rval = qla2x00_configure_fabric(ha);
|
||||||
@ -2369,7 +2369,7 @@ qla2x00_find_all_fabric_devs(scsi_qla_host_t *ha, struct list_head *new_fcports)
|
|||||||
if (qla2x00_is_reserved_id(ha, loop_id))
|
if (qla2x00_is_reserved_id(ha, loop_id))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (atomic_read(&ha->loop_down_timer) || LOOP_NOT_READY(ha))
|
if (atomic_read(&ha->loop_down_timer) || LOOP_TRANSITION(ha))
|
||||||
break;
|
break;
|
||||||
|
|
||||||
if (swl != NULL) {
|
if (swl != NULL) {
|
||||||
|
Loading…
Reference in New Issue
Block a user