drivers: net: davinci_cpdma: double free on error
We recently change the kzalloc() to devm_kzalloc() so freeing "ctlr"
here could lead to a double free.
Fixes: e194312854
('drivers: net: davinci_cpdma: Convert kzalloc() to devm_kzalloc().')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
8fc908c3c3
commit
2f87208efb
|
@ -285,10 +285,8 @@ struct cpdma_ctlr *cpdma_ctlr_create(struct cpdma_params *params)
|
||||||
ctlr->params.desc_hw_addr,
|
ctlr->params.desc_hw_addr,
|
||||||
ctlr->params.desc_mem_size,
|
ctlr->params.desc_mem_size,
|
||||||
ctlr->params.desc_align);
|
ctlr->params.desc_align);
|
||||||
if (!ctlr->pool) {
|
if (!ctlr->pool)
|
||||||
kfree(ctlr);
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
|
||||||
|
|
||||||
if (WARN_ON(ctlr->num_chan > CPDMA_MAX_CHANNELS))
|
if (WARN_ON(ctlr->num_chan > CPDMA_MAX_CHANNELS))
|
||||||
ctlr->num_chan = CPDMA_MAX_CHANNELS;
|
ctlr->num_chan = CPDMA_MAX_CHANNELS;
|
||||||
|
|
Loading…
Reference in New Issue