> This patch enables to create and destroy scheduling workqueue into
> common graph operations.
> 
> Signed-off-by: Haiyue Wang <haiyue.w...@intel.com>
> Signed-off-by: Cunming Liang <cunming.li...@intel.com>
> Signed-off-by: Zhirun Yan <zhirun....@intel.com>

Acked-by: Pavan Nikhilesh <pbhagavat...@marvell.com>
> ---
>  lib/graph/graph.c | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/lib/graph/graph.c b/lib/graph/graph.c
> index 41251e3435..0c28d925bc 100644
> --- a/lib/graph/graph.c
> +++ b/lib/graph/graph.c
> @@ -451,6 +451,11 @@ rte_graph_destroy(rte_graph_t id)
>       while (graph != NULL) {
>               tmp = STAILQ_NEXT(graph, next);
>               if (graph->id == id) {
> +                     /* Destroy the schedule work queue if has */
> +                     if (rte_graph_worker_model_get(graph->graph) ==
> +                         RTE_GRAPH_MODEL_MCORE_DISPATCH)
> +                             graph_sched_wq_destroy(graph);
> +
>                       /* Call fini() of the all the nodes in the graph */
>                       graph_node_fini(graph);
>                       /* Destroy graph fast path memory */
> @@ -524,6 +529,11 @@ graph_clone(struct graph *parent_graph, const char
> *name, struct rte_graph_param
>       /* Clone the graph model */
>       graph->graph->model = parent_graph->graph->model;
> 
> +     /* Create the graph schedule work queue */
> +     if (rte_graph_worker_model_get(graph->graph) ==
> RTE_GRAPH_MODEL_MCORE_DISPATCH &&
> +         graph_sched_wq_create(graph, parent_graph, prm))
> +             goto graph_mem_destroy;
> +
>       /* Call init() of the all the nodes in the graph */
>       if (graph_node_init(graph))
>               goto graph_mem_destroy;
> --
> 2.37.2

Reply via email to