[PATCH 3/7] graph: add explicit cast to allow C++ build

Stephen Hemminger stephen at networkplumber.org
Fri Feb 4 19:12:39 CET 2022


On Fri,  4 Feb 2022 17:42:05 +0000
Bruce Richardson <bruce.richardson at intel.com> wrote:

> C++ does not have automatic casting to/from void pointers, so need
> explicit cast if header is to be included in C++ code
> 
> Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
> ---
>  lib/graph/rte_graph_worker.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/lib/graph/rte_graph_worker.h b/lib/graph/rte_graph_worker.h
> index eef77f732a..0c0b9c095a 100644
> --- a/lib/graph/rte_graph_worker.h
> +++ b/lib/graph/rte_graph_worker.h
> @@ -155,7 +155,7 @@ rte_graph_walk(struct rte_graph *graph)
>  	 *	+-----+ <= cir_start + mask
>  	 */
>  	while (likely(head != graph->tail)) {
> -		node = RTE_PTR_ADD(graph, cir_start[(int32_t)head++]);
> +		node = (struct rte_node *)RTE_PTR_ADD(graph, cir_start[(int32_t)head++]);
>  		RTE_ASSERT(node->fence == RTE_GRAPH_FENCE);
>  		objs = node->objs;
>  		rte_prefetch0(objs);

Having to do this raises the other question.
Why is this code inline? It should not be in critical path.


More information about the dev mailing list