From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753550AbcGDLfJ (ORCPT ); Mon, 4 Jul 2016 07:35:09 -0400 Received: from mail-yw0-f193.google.com ([209.85.161.193]:33385 "EHLO mail-yw0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753055AbcGDLfF (ORCPT ); Mon, 4 Jul 2016 07:35:05 -0400 MIME-Version: 1.0 In-Reply-To: <20160704130722.735f94c9@canb.auug.org.au> References: <20160704130722.735f94c9@canb.auug.org.au> From: Saeed Mahameed Date: Mon, 4 Jul 2016 14:34:15 +0300 Message-ID: Subject: Re: linux-next: manual merge of the net-next tree with the net tree To: Stephen Rothwell Cc: David Miller , Linux Netdev List , linux-next@vger.kernel.org, linux-kernel , Daniel Jurgens , Saeed Mahameed , Yevgeny Petrilin Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jul 4, 2016 at 6:07 AM, Stephen Rothwell wrote: > Hi all, > > Today's linux-next merge of the net-next tree got a conflict in: > > drivers/net/ethernet/mellanox/mlx5/core/en_main.c > > between commit: > > 29429f3300a3 ("net/mlx5e: Timeout if SQ doesn't flush during close") > > from the net tree and commit: > > 507f0c817f7a ("net/mlx5e: Add TXQ set max rate support") > > from the net-next tree. > > I fixed it up (see below) and can carry the fix as necessary. This > is now fixed as far as linux-next is concerned, but any non trivial > conflicts should be mentioned to your upstream maintainer when your tree > is submitted for merging. You may also want to consider cooperating > with the maintainer of the conflicting tree to minimise any particularly > complex conflicts. > > -- > Cheers, > Stephen Rothwell > > diff --cc drivers/net/ethernet/mellanox/mlx5/core/en_main.c > index 7a0dca29c642,96ec53a6a595..000000000000 > --- a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c > +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c > @@@ -39,16 -39,10 +39,17 @@@ > #include "eswitch.h" > #include "vxlan.h" > > +enum { > + MLX5_EN_QP_FLUSH_TIMEOUT_MS = 5000, > + MLX5_EN_QP_FLUSH_MSLEEP_QUANT = 20, > + MLX5_EN_QP_FLUSH_MAX_ITER = MLX5_EN_QP_FLUSH_TIMEOUT_MS / > + MLX5_EN_QP_FLUSH_MSLEEP_QUANT, > +}; > + > struct mlx5e_rq_param { > - u32 rqc[MLX5_ST_SZ_DW(rqc)]; > - struct mlx5_wq_param wq; > + u32 rqc[MLX5_ST_SZ_DW(rqc)]; > + struct mlx5_wq_param wq; > + bool am_enabled; > }; > > struct mlx5e_sq_param { > @@@ -574,8 -543,9 +582,10 @@@ static void mlx5e_close_rq(struct mlx5e > /* avoid destroying rq before mlx5e_poll_rx_cq() is done with it */ > napi_synchronize(&rq->channel->napi); > > + cancel_work_sync(&rq->am.work); > + > mlx5e_disable_rq(rq); > + mlx5e_free_rx_descs(rq); > mlx5e_destroy_rq(rq); > } > > @@@ -835,19 -810,12 +853,19 @@@ static void mlx5e_close_sq(struct mlx5e > if (mlx5e_sq_has_room_for(sq, 1)) > mlx5e_send_nop(sq, true); > > - mlx5e_modify_sq(sq, MLX5_SQC_STATE_RDY, MLX5_SQC_STATE_ERR, > - false, 0); > + err = mlx5e_modify_sq(sq, MLX5_SQC_STATE_RDY, > - MLX5_SQC_STATE_ERR); > ++ MLX5_SQC_STATE_ERR, false, 0); > + if (err) > + set_bit(MLX5E_SQ_STATE_TX_TIMEOUT, &sq->state); > } Thanks Stephen, the fixup looks good. I already notified Dave on those issues and how to fix, see mail thread "Mellanox 100G mlx5 resiliency and xmit path fixes" Thanks, Saeed.