mempool/dpaa: fix leak in pool creation failure

When 'rte_zmalloc' failed dpaa_mbuf_create_pool() forgets freeing
'bp' thus leading resource leak. This patch avoids this.

Coverity issue: 337679

Signed-off-by: Li Qiang <liq3ea@163.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
This commit is contained in:
Li Qiang 2019-04-09 07:56:21 -07:00 committed by Thomas Monjalon
parent cea66312b4
commit d37f5f279b

View File

@ -78,8 +78,10 @@ dpaa_mbuf_create_pool(struct rte_mempool *mp)
rte_dpaa_bpid_info = (struct dpaa_bp_info *)rte_zmalloc(NULL,
sizeof(struct dpaa_bp_info) * DPAA_MAX_BPOOLS,
RTE_CACHE_LINE_SIZE);
if (rte_dpaa_bpid_info == NULL)
if (rte_dpaa_bpid_info == NULL) {
bman_free_pool(bp);
return -ENOMEM;
}
}
rte_dpaa_bpid_info[bpid].mp = mp;