On Wed, May 04, 2022 at 11:39:35PM -0500, Tianhao Chai wrote:
> Currently the "extern C" section ends right before rte_dev_dma_unmap
> and other DMA function declarations, causing some C++ compilers to
> produce C++ mangled symbols to rte_dev_dma_unmap instead of C symbols.
> This leads to build failures later when linking a final executable
> against this object.
> 
> The issue is observed on DPDK 22.03 and G++ 11.
> 

From the git history I think the first offending commit is a753e53.

Fixes: a753e53d517b ("eal: add device event monitor framework")


> Signed-off-by: Tianhao Chai <cth...@gmail.com>

Acked-by: Bruce Richardson <bruce.richard...@intel.com>

> ---
>  lib/eal/include/rte_dev.h | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/lib/eal/include/rte_dev.h b/lib/eal/include/rte_dev.h
> index 448a41cb0e..e6ff1218f9 100644
> --- a/lib/eal/include/rte_dev.h
> +++ b/lib/eal/include/rte_dev.h
> @@ -320,10 +320,6 @@ rte_dev_iterator_next(struct rte_dev_iterator *it);
>            dev != NULL; \
>            dev = rte_dev_iterator_next(it))
>  
> -#ifdef __cplusplus
> -}
> -#endif
> -
>  /**
>   * @warning
>   * @b EXPERIMENTAL: this API may change without prior notice
> @@ -496,4 +492,8 @@ int
>  rte_dev_dma_unmap(struct rte_device *dev, void *addr, uint64_t iova,
>                 size_t len);
>  
> +#ifdef __cplusplus
> +}
> +#endif
> +
>  #endif /* _RTE_DEV_H_ */
> -- 
> 2.35.1
> 


Attachment: signature.asc
Description: PGP signature

Reply via email to