aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_isr.c
diff options
context:
space:
mode:
authorAndrew Vasquez <andrew.vasquez@qlogic.com>2010-05-28 18:08:19 -0400
committerJames Bottomley <James.Bottomley@suse.de>2010-07-27 13:01:21 -0400
commit6ac5260850841eb4055811a68ff47d658ebe9a59 (patch)
tree00e6bc407c4732ffb709ba9de7d8c743b9520194 /drivers/scsi/qla2xxx/qla_isr.c
parent083a469db4ecf3b286a96b5b722c37fc1affe0be (diff)
[SCSI] qla2xxx: Correct async-srb issues.
* hold the hardware_lock throughout the duration of ctx-sp timeout handling -- could result in use-after-free oops. * retry a timed-out login-request. * done() routines are called with the hardware-lock held, issue qla2x00_mark_device_lost() with proper 'defer' flag. * FCP2 capabilities are only relevant to target devices. Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_isr.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_isr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
index bc82ba99f251..912befdceb16 100644
--- a/drivers/scsi/qla2xxx/qla_isr.c
+++ b/drivers/scsi/qla2xxx/qla_isr.c
@@ -949,7 +949,7 @@ qla2x00_mbx_iocb_entry(scsi_qla_host_t *vha, struct req_que *req,
949 fcport->port_type = FCT_TARGET; 949 fcport->port_type = FCT_TARGET;
950 if (le16_to_cpu(mbx->mb1) & BIT_0) 950 if (le16_to_cpu(mbx->mb1) & BIT_0)
951 fcport->port_type = FCT_INITIATOR; 951 fcport->port_type = FCT_INITIATOR;
952 if (le16_to_cpu(mbx->mb1) & BIT_1) 952 else if (le16_to_cpu(mbx->mb1) & BIT_1)
953 fcport->flags |= FCF_FCP2_DEVICE; 953 fcport->flags |= FCF_FCP2_DEVICE;
954 } 954 }
955 goto logio_done; 955 goto logio_done;