summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx
diff options
context:
space:
mode:
authorMadhuranath Iyengar <madhuranath.iyengar@qlogic.com>2010-07-23 15:28:22 +0500
committerJames Bottomley <James.Bottomley@suse.de>2010-07-28 09:06:07 -0500
commit17cf2c5d76b468ca03e59c7cf60decfcef6c08c4 (patch)
treebab1ff8bafde5df545fc04eb7bd61dc2976496b0 /drivers/scsi/qla2xxx
parentc01be6dcb2b5cce4feaf48035be6395e5cd7d47c (diff)
[SCSI] qla2xxx: Don't issue set or get port param MBC if invalid port loop id
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 3a024838850..20eaa1c42ae 100644
--- a/drivers/scsi/qla2xxx/qla_bsg.c
+++ b/drivers/scsi/qla2xxx/qla_bsg.c
@@ -1222,6 +1222,13 @@ qla24xx_iidma(struct fc_bsg_job *bsg_job)
return -EINVAL;
}
+ if (fcport->loop_id == FC_NO_LOOP_ID) {
+ DEBUG2(printk(KERN_ERR "%s(%ld): Invalid port loop id, "
+ "loop_id = 0x%x\n",
+ __func__, vha->host_no, fcport->loop_id));
+ return -EINVAL;
+ }
+
if (port_param->mode)
rval = qla2x00_set_idma_speed(vha, fcport->loop_id,
port_param->speed, mb);