summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWei Yongjun <yongjun_wei@trendmicro.com.cn>2012-12-02 08:33:24 -0500
committerJames Bottomley <JBottomley@Parallels.com>2013-04-11 14:17:15 -0700
commit5a25bf36b7394f11f2ff90c9e203639cd3dc041a (patch)
tree6f1d4347dba9ca493f71a44093cc8152d9aa126a
parentd4a2618fa77b5e58ec15342972bd3505a1c3f551 (diff)
downloadlinux-stable-5a25bf36b7394f11f2ff90c9e203639cd3dc041a.tar.gz
linux-stable-5a25bf36b7394f11f2ff90c9e203639cd3dc041a.tar.bz2
linux-stable-5a25bf36b7394f11f2ff90c9e203639cd3dc041a.zip
[SCSI] lpfc: fix potential NULL pointer dereference in lpfc_sli4_rq_put()
The dereference to 'put_index' should be moved below the NULL test. Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Acked-by: James Smart <james.smart@emulex.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
-rw-r--r--drivers/scsi/lpfc/lpfc_sli.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c
index 74b67d98e952..d43faf34c1e2 100644
--- a/drivers/scsi/lpfc/lpfc_sli.c
+++ b/drivers/scsi/lpfc/lpfc_sli.c
@@ -438,11 +438,12 @@ lpfc_sli4_rq_put(struct lpfc_queue *hq, struct lpfc_queue *dq,
struct lpfc_rqe *temp_hrqe;
struct lpfc_rqe *temp_drqe;
struct lpfc_register doorbell;
- int put_index = hq->host_index;
+ int put_index;
/* sanity check on queue memory */
if (unlikely(!hq) || unlikely(!dq))
return -ENOMEM;
+ put_index = hq->host_index;
temp_hrqe = hq->qe[hq->host_index].rqe;
temp_drqe = dq->qe[dq->host_index].rqe;