net: ipa: pass correct dma_handle to dma_free_coherent()
[ Upstream commit 4ace7a6e287b7e3b33276cd9fe870c326f880480 ] The "ring->addr = addr;" assignment is done a few lines later so we can't use "ring->addr" yet. The correct dma_handle is "addr". Fixes: 650d1603825d ("soc: qcom: ipa: the generic software interface") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by: Alex Elder <elder@linaro.org> Link: https://lore.kernel.org/r/YBjpTU2oejkNIULT@mwanda Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
714c19bc13
commit
38b83bcec9
@ -1256,7 +1256,7 @@ static int gsi_ring_alloc(struct gsi *gsi, struct gsi_ring *ring, u32 count)
|
||||
/* Hardware requires a 2^n ring size, with alignment equal to size */
|
||||
ring->virt = dma_alloc_coherent(dev, size, &addr, GFP_KERNEL);
|
||||
if (ring->virt && addr % size) {
|
||||
dma_free_coherent(dev, size, ring->virt, ring->addr);
|
||||
dma_free_coherent(dev, size, ring->virt, addr);
|
||||
dev_err(dev, "unable to alloc 0x%zx-aligned ring buffer\n",
|
||||
size);
|
||||
return -EINVAL; /* Not a good error value, but distinct */
|
||||
|
Loading…
x
Reference in New Issue
Block a user