2022-05-20 10:13:57

by guanjing (D)

[permalink] [raw]
Subject: [PATCH -next] net/mlx5: Fix build error of multiple definition

There are some errors like:

drivers/net/ethernet/mellanox/mlx5/core/lag/lag.o:
In function `mlx5_lag_mpesw_init':
lag.c:(.text+0xb70): multiple definition of `mlx5_lag_mpesw_init'
drivers/net/ethernet/mellanox/mlx5/core/lag/debugfs.o:debugfs.c:(.text+0x440):
first defined here
drivers/net/ethernet/mellanox/mlx5/core/lag/lag.o: In function `mlx5_lag_mpesw_cleanup':
lag.c:(.text+0xb80): multiple definition of `mlx5_lag_mpesw_cleanup'
drivers/net/ethernet/mellanox/mlx5/core/lag/debugfs.o:debugfs.c:(.text+0x450):
first defined here

So, add 'static inline' on the defineation of these functions.

Reported-by: Hulk Robot <[email protected]>
Fixes: 94db33177819 ("net/mlx5: Support multiport eswitch mode")
Signed-off-by: Guan Jing <[email protected]>
---
drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.h b/drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.h
index d39a02280e29..be4abcb8fcd5 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.h
+++ b/drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.h
@@ -19,8 +19,8 @@ bool mlx5_lag_mpesw_is_activated(struct mlx5_core_dev *dev);
void mlx5_lag_mpesw_init(struct mlx5_lag *ldev);
void mlx5_lag_mpesw_cleanup(struct mlx5_lag *ldev);
#else
-void mlx5_lag_mpesw_init(struct mlx5_lag *ldev) {}
-void mlx5_lag_mpesw_cleanup(struct mlx5_lag *ldev) {}
+static inline void mlx5_lag_mpesw_init(struct mlx5_lag *ldev) {}
+static inline void mlx5_lag_mpesw_cleanup(struct mlx5_lag *ldev) {}
#endif

#endif /* __MLX5_LAG_MPESW_H__ */
--
2.17.1



2022-05-23 06:50:22

by Saeed Mahameed

[permalink] [raw]
Subject: Re: [PATCH -next] net/mlx5: Fix build error of multiple definition

On 20 May 15:34, Guan Jing wrote:
>There are some errors like:
>
>drivers/net/ethernet/mellanox/mlx5/core/lag/lag.o:
>In function `mlx5_lag_mpesw_init':
>lag.c:(.text+0xb70): multiple definition of `mlx5_lag_mpesw_init'
>drivers/net/ethernet/mellanox/mlx5/core/lag/debugfs.o:debugfs.c:(.text+0x440):
>first defined here
>drivers/net/ethernet/mellanox/mlx5/core/lag/lag.o: In function `mlx5_lag_mpesw_cleanup':
>lag.c:(.text+0xb80): multiple definition of `mlx5_lag_mpesw_cleanup'
>drivers/net/ethernet/mellanox/mlx5/core/lag/debugfs.o:debugfs.c:(.text+0x450):
>first defined here
>
>So, add 'static inline' on the defineation of these functions.
Already fixed by:
commit d935053a62fa11d06c757c1725782e46e7e823db
Author: Jakub Kicinski <[email protected]>
Date: Wed May 18 11:30:22 2022 -0700

net/mlx5: fix multiple definitions of mlx5_lag_mpesw_init / mlx5_lag_mpesw_cleanup


Thanks.