From: Keith Busch Date: Wed, 1 May 2013 19:07:47 +0000 (-0600) Subject: NVMe: Fix error clean-up on nvme_alloc_queue X-Git-Tag: v3.10-rc1~21^2~10 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=68b8eca5f882230e4991df0db0a3094f49420a90;p=karo-tx-linux.git NVMe: Fix error clean-up on nvme_alloc_queue The nvme_queue's depth is not set if we fail to allocate submission queue entries, which was being used to determine how much coherent memory to free on error. Use the depth variable instead. Signed-off-by: Keith Busch Signed-off-by: Matthew Wilcox --- diff --git a/drivers/block/nvme-core.c b/drivers/block/nvme-core.c index 391a874e4133..388c54d84809 100644 --- a/drivers/block/nvme-core.c +++ b/drivers/block/nvme-core.c @@ -956,7 +956,7 @@ static struct nvme_queue *nvme_alloc_queue(struct nvme_dev *dev, int qid, return nvmeq; free_cqdma: - dma_free_coherent(dmadev, CQ_SIZE(nvmeq->q_depth), (void *)nvmeq->cqes, + dma_free_coherent(dmadev, CQ_SIZE(depth), (void *)nvmeq->cqes, nvmeq->cq_dma_addr); free_nvmeq: kfree(nvmeq);