In some rare case, the libc memory heap allocation may fail and return NULL pointer. Before accessing the memory via the pointer, the NULL pointer check should be done to ensure the code locates in the safe side and no crash.
Some newer GCC version will check this by default and report warning on this. Adding the NULL pointer check will help to get rid of such warning. Fixes: 5194299d6ef5 ("examples/ntb: support more functions") Cc: xiaoyun...@intel.com Signed-off-by: Bing Zhao <bi...@nvidia.com> --- examples/ntb/ntb_fwd.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/examples/ntb/ntb_fwd.c b/examples/ntb/ntb_fwd.c index 37d60208e3..bd4f038516 100644 --- a/examples/ntb/ntb_fwd.c +++ b/examples/ntb/ntb_fwd.c @@ -843,9 +843,20 @@ ntb_stats_display(void) return; } ids = malloc(sizeof(uint32_t) * nb_ids); + if (ids == NULL) { + printf("Cannot allocate memory for statistics IDs\n"); + free(xstats_names); + return; + } for (i = 0; i < nb_ids; i++) ids[i] = i; values = malloc(sizeof(uint64_t) * nb_ids); + if (values == NULL) { + printf("Cannot allocate memory to save fetching values\n"); + free(xstats_names); + free(ids); + return; + } if (nb_ids != rte_rawdev_xstats_get(dev_id, ids, values, nb_ids)) { printf("Error: Unable to get xstats\n"); free(xstats_names); -- 2.34.1