app/testpmd: fix memory failure handling for i40e DDP

In cmd_ddp_get_list_parsed(), elements of "p_list" are accessed
even after the memory allocation for "p_list" fails.

With this patch, this null pointer dereference is avoided as we
return when there is malloc failure.

Fixes: e088907bb8 ("app/testpmd: add command for getting loaded DDP profiles")
Cc: stable@dpdk.org

Signed-off-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
This commit is contained in:
Kalesh AP 2020-05-08 10:20:24 +05:30 committed by Ferruh Yigit
parent f002ee9c8e
commit 489bdbbfc2

View File

@ -16891,8 +16891,10 @@ cmd_ddp_get_list_parsed(
#ifdef RTE_LIBRTE_I40E_PMD
size = PROFILE_INFO_SIZE * MAX_PROFILE_NUM + 4;
p_list = (struct rte_pmd_i40e_profile_list *)malloc(size);
if (!p_list)
if (!p_list) {
printf("%s: Failed to malloc buffer\n", __func__);
return;
}
if (ret == -ENOTSUP)
ret = rte_pmd_i40e_get_ddp_list(res->port_id,