summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx
diff options
context:
space:
mode:
authorMadhuranath Iyengar <madhuranath.iyengar@qlogic.com>2010-07-23 15:28:31 +0500
committerJames Bottomley <James.Bottomley@suse.de>2010-07-28 09:06:12 -0500
commit9a15eb4b514c526cf3181ce224967ab5d8dafe77 (patch)
treed01ee1b0fb11db9977e492d36468c6683f9fc4fd /drivers/scsi/qla2xxx
parent8867048b486a64125b62f93af13a379d6d575ee2 (diff)
[SCSI] qla2xxx: Don't issue set or get port param MBC if remote port is not logged in
Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/qla2xxx')
-rw-r--r--drivers/scsi/qla2xxx/qla_bsg.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/scsi/qla2xxx/qla_bsg.c b/drivers/scsi/qla2xxx/qla_bsg.c
index d551ae19d4e..518fccfbfdb 100644
--- a/drivers/scsi/qla2xxx/qla_bsg.c
+++ b/drivers/scsi/qla2xxx/qla_bsg.c
@@ -1259,6 +1259,13 @@ qla24xx_iidma(struct fc_bsg_job *bsg_job)
return -EINVAL;
}
+ if (fcport->flags & FCF_LOGIN_NEEDED) {
+ DEBUG2(printk(KERN_ERR "%s(%ld): Remote port not logged in, "
+ "flags = 0x%x\n",
+ __func__, vha->host_no, fcport->flags));
+ return -EINVAL;
+ }
+
if (port_param->mode)
rval = qla2x00_set_idma_speed(vha, fcport->loop_id,
port_param->speed, mb);