test/graph: fix memory leaks in performance tests
authorPavan Nikhilesh <pbhagavatula@marvell.com>
Wed, 13 May 2020 20:56:00 +0000 (02:26 +0530)
committerDavid Marchand <david.marchand@redhat.com>
Fri, 15 May 2020 09:00:55 +0000 (11:00 +0200)
Fix memory leaks reported by Coverity.

Fixes: 61d77071ab99 ("test/graph: add performance tests")

Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
app/test/test_graph_perf.c

index 3089fb2..296d99a 100644 (file)
@@ -76,6 +76,8 @@ test_node_ctx_init(const struct rte_graph *graph, struct rte_node *node)
        RTE_SET_USED(graph);
 
        mz = rte_memzone_lookup(TEST_GRAPH_PERF_MZ);
+       if (mz == NULL)
+               return -ENOMEM;
        graph_data = mz->addr;
        node_data = graph_get_node_data(graph_data, nid);
        node->ctx[0] = node->nb_edges;
@@ -570,6 +572,7 @@ graph_init(const char *gname, uint8_t nb_srcs, uint8_t nb_sinks,
        }
        graph_data->graph_id = graph_id;
 
+       free(node_map);
        for (i = 0; i < graph_data->nb_nodes; i++)
                free(node_patterns[i]);
        free(snk_nodes);
@@ -578,6 +581,7 @@ graph_init(const char *gname, uint8_t nb_srcs, uint8_t nb_sinks,
        return 0;
 
 pattern_name_free:
+       free(node_map);
        for (i = 0; i < graph_data->nb_nodes; i++)
                free(node_patterns[i]);
 snk_free:
@@ -677,6 +681,8 @@ measure_perf(void)
        struct test_graph_perf *graph_data;
 
        mz = rte_memzone_lookup(TEST_GRAPH_PERF_MZ);
+       if (mz == NULL)
+               return -ENOMEM;
        graph_data = mz->addr;
 
        return measure_perf_get(graph_data->graph_id);