Subject: Re: linux-next: build failure after merge of the bpf-next tree

From: Stephen Rothwell <[email-masked]>
Date: Mon, 1 Jul 2019 15:01:51 +1000

Hi all,

On Mon, 1 Jul 2019 14:57:22 +1000 Stephen Rothwell <[email-masked]> wrote:
> 
> After merging the bpf-next tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
> 
> drivers/net/ethernet/mellanox/mlx5/core/en_main.c:1605:5: error: conflicting types for 'mlx5e_open_cq'
>  int mlx5e_open_cq(struct mlx5e_channel *c, struct dim_cq_moder moder,
>      ^~~~~~~~~~~~~
> In file included from drivers/net/ethernet/mellanox/mlx5/core/en_main.c:43:
> drivers/net/ethernet/mellanox/mlx5/core/en.h:977:5: note: previous declaration of 'mlx5e_open_cq' was here
>  int mlx5e_open_cq(struct mlx5e_channel *c, struct net_dim_cq_moder moder,
>      ^~~~~~~~~~~~~
> 
> Caused by commit
> 
>   8960b38932be ("linux/dim: Rename externally used net_dim members")
> 
> from the net-next tree interacting with commit
> 
>   db05815b36cb ("net/mlx5e: Add XSK zero-copy support")
> 
> I have applied the following merge fix patch.
> 
> From 8e92dbee0daa6bac412daebd08073ba9ca31c7a6 Mon Sep 17 00:00:00 2001
> From: Stephen Rothwell <[email-masked]>
> Date: Mon, 1 Jul 2019 14:55:02 +1000
> Subject: [PATCH] net/mlx5e: fix up for "linux/dim: Rename externally used
>  net_dim members"
> 
> Signed-off-by: Stephen Rothwell <[email-masked]>
> ---
>  drivers/net/ethernet/mellanox/mlx5/core/en.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en.h b/drivers/net/ethernet/mellanox/mlx5/core/en.h
> index 9cebaa642727..f0d77eb66acf 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/en.h
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/en.h
> @@ -974,7 +974,7 @@ int mlx5e_open_xdpsq(struct mlx5e_channel *c, struct mlx5e_params *params,
>  void mlx5e_close_xdpsq(struct mlx5e_xdpsq *sq);
>  
>  struct mlx5e_cq_param;
> -int mlx5e_open_cq(struct mlx5e_channel *c, struct net_dim_cq_moder moder,
> +int mlx5e_open_cq(struct mlx5e_channel *c, struct dim_cq_moder moder,
>  		  struct mlx5e_cq_param *param, struct mlx5e_cq *cq);
>  void mlx5e_close_cq(struct mlx5e_cq *cq);
>  

Also, this:

drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c: In function 'mlx5e_open_xsk':
drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c:64:9: error: variable 'icocq_moder' has initializer but incomplete type
  struct net_dim_cq_moder icocq_moder = {};
         ^~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c:64:26: error: storage size of 'icocq_moder' isn't known
  struct net_dim_cq_moder icocq_moder = {};
                          ^~~~~~~~~~~

For which I applied this:

From: Stephen Rothwell <[email-masked]>
Date: Mon, 1 Jul 2019 15:00:08 +1000
Subject: [PATCH] another fix for "linux/dim: Rename externally used net_dim
 members"

Signed-off-by: Stephen Rothwell <[email-masked]>
---
 drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c b/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c
index 9b4d47c47c92..aaffa6f68dc0 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/setup.c
@@ -61,7 +61,7 @@ int mlx5e_open_xsk(struct mlx5e_priv *priv, struct mlx5e_params *params,
 		   struct mlx5e_channel *c)
 {
 	struct mlx5e_channel_param cparam = {};
-	struct net_dim_cq_moder icocq_moder = {};
+	struct dim_cq_moder icocq_moder = {};
 	int err;
 
 	if (!mlx5e_validate_xsk_param(params, xsk, priv->mdev))
-- 
2.20.1

-- 
Cheers,
Stephen Rothwell