[SCSI] qla2xxx: Don't issue set or get port param MBC if invalid port loop id
authorMadhuranath Iyengar <madhuranath.iyengar@qlogic.com>
Fri, 23 Jul 2010 10:28:22 +0000 (15:28 +0500)
committerJames Bottomley <James.Bottomley@suse.de>
Wed, 28 Jul 2010 14:06:07 +0000 (09:06 -0500)
Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/scsi/qla2xxx/qla_bsg.c

index 3a0248388505a69630c53265e87a16ac45198afd..20eaa1c42ae25e67284478121d69c2e1f237b52e 100644 (file)
@@ -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);