Commit 52565544 authored by Divy Le Ray's avatar Divy Le Ray Committed by David S. Miller

cxgb3: avoid potential memory leak.

Add consistency in alloc_ring() parameter checking
to avoid potential memory leaks.
alloc_ring() callers are correct fo far.
Signed-off-by: default avatarDivy Le Ray <divy@chelsio.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 43a944f3
...@@ -549,16 +549,15 @@ static void *alloc_ring(struct pci_dev *pdev, size_t nelem, size_t elem_size, ...@@ -549,16 +549,15 @@ static void *alloc_ring(struct pci_dev *pdev, size_t nelem, size_t elem_size,
if (!p) if (!p)
return NULL; return NULL;
if (sw_size) { if (sw_size && metadata) {
s = kcalloc(nelem, sw_size, GFP_KERNEL); s = kcalloc(nelem, sw_size, GFP_KERNEL);
if (!s) { if (!s) {
dma_free_coherent(&pdev->dev, len, p, *phys); dma_free_coherent(&pdev->dev, len, p, *phys);
return NULL; return NULL;
} }
}
if (metadata)
*(void **)metadata = s; *(void **)metadata = s;
}
memset(p, 0, len); memset(p, 0, len);
return p; return p;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment