On Fri, Jul 17, 2026 at 11:29:58AM +0200, David Marchand wrote:
> Internal symbols *can not* be called as part of public ABI.
> The GFNI stubs must be exported so that an application may call them
> through the (inlined) GFNI API without requiring ALLOW_INTERNAL_API.
> 
> Fixes: 944a03a5cfc1 ("hash: fix MSVC link on GFNI stubs")
> 
> Signed-off-by: David Marchand <[email protected]>
Acked-by: Bruce Richardson <[email protected]>
> ---
>  lib/hash/rte_thash_gfni.c | 4 ++--
>  lib/hash/rte_thash_gfni.h | 2 --
>  2 files changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/lib/hash/rte_thash_gfni.c b/lib/hash/rte_thash_gfni.c
> index 2003c7b3db..ae55f7f711 100644
> --- a/lib/hash/rte_thash_gfni.c
> +++ b/lib/hash/rte_thash_gfni.c
> @@ -13,7 +13,7 @@ RTE_LOG_REGISTER_SUFFIX(hash_gfni_logtype, gfni, INFO);
>  #define HASH_LOG(level, ...) \
>       RTE_LOG_LINE(level, HASH, "" __VA_ARGS__)
>  
> -RTE_EXPORT_INTERNAL_SYMBOL(rte_thash_gfni_stub)
> +RTE_EXPORT_SYMBOL(rte_thash_gfni_stub)
>  uint32_t
>  rte_thash_gfni_stub(const uint64_t *mtrx __rte_unused,
>       const uint8_t *key __rte_unused, int len __rte_unused)
> @@ -29,7 +29,7 @@ rte_thash_gfni_stub(const uint64_t *mtrx __rte_unused,
>       return 0;
>  }
>  
> -RTE_EXPORT_INTERNAL_SYMBOL(rte_thash_gfni_bulk_stub)
> +RTE_EXPORT_SYMBOL(rte_thash_gfni_bulk_stub)
>  void
>  rte_thash_gfni_bulk_stub(const uint64_t *mtrx __rte_unused,
>       int len __rte_unused, uint8_t *tuple[] __rte_unused,
> diff --git a/lib/hash/rte_thash_gfni.h b/lib/hash/rte_thash_gfni.h
> index e82378933c..8a72fa9ec6 100644
> --- a/lib/hash/rte_thash_gfni.h
> +++ b/lib/hash/rte_thash_gfni.h
> @@ -22,11 +22,9 @@ extern "C" {
>   * @internal
>   * Stubs only used when GFNI is not available.
>   */
> -__rte_internal
>  uint32_t
>  rte_thash_gfni_stub(const uint64_t *mtrx, const uint8_t *key, int len);
>  
> -__rte_internal
>  void
>  rte_thash_gfni_bulk_stub(const uint64_t *mtrx, int len, uint8_t *tuple[],
>       uint32_t val[], uint32_t num);
> -- 
> 2.54.0
> 

Reply via email to