On Thu 25 Feb 2021 at 14:54, Arnd Bergmann <a...@kernel.org> wrote:
> From: Arnd Bergmann <a...@arndb.de>
>
> The alternative implementation of this function in a header file
> is declared as a global symbol, and gets added to every .c file
> that includes it, which leads to a link error:
>
> arm-linux-gnueabi-ld: drivers/net/ethernet/mellanox/mlx5/core/en_rx.o: in 
> function `mlx5e_tc_tun_update_header_ipv6':
> en_rx.c:(.text+0x0): multiple definition of 
> `mlx5e_tc_tun_update_header_ipv6'; 
> drivers/net/ethernet/mellanox/mlx5/core/en_main.o:en_main.c:(.text+0x0): 
> first defined here
>
> Mark it 'static inline' like the other functions here.
>
> Fixes: c7b9038d8af6 ("net/mlx5e: TC preparation refactoring for routing 
> update event")
> Signed-off-by: Arnd Bergmann <a...@arndb.de>
> ---
>  drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.h | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.h 
> b/drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.h
> index 67de2bf36861..89d5ca91566e 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.h
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.h
> @@ -76,10 +76,12 @@ int mlx5e_tc_tun_update_header_ipv6(struct mlx5e_priv 
> *priv,
>  static inline int
>  mlx5e_tc_tun_create_header_ipv6(struct mlx5e_priv *priv,
>                               struct net_device *mirred_dev,
> -                             struct mlx5e_encap_entry *e) { return 
> -EOPNOTSUPP; }
> -int mlx5e_tc_tun_update_header_ipv6(struct mlx5e_priv *priv,
> -                                 struct net_device *mirred_dev,
> -                                 struct mlx5e_encap_entry *e)
> +                             struct mlx5e_encap_entry *e)
> +{ return -EOPNOTSUPP; }
> +static inline int
> +mlx5e_tc_tun_update_header_ipv6(struct mlx5e_priv *priv,
> +                             struct net_device *mirred_dev,
> +                             struct mlx5e_encap_entry *e)
>  { return -EOPNOTSUPP; }
>  #endif
>  int mlx5e_tc_tun_route_lookup(struct mlx5e_priv *priv,

Thanks Arnd!

Reviewed-by: Vlad Buslov <vla...@nvidia.com>

Reply via email to