From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.6 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS,USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 885CFC282CE for ; Mon, 11 Feb 2019 20:02:14 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 59031217FA for ; Mon, 11 Feb 2019 20:02:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1549915334; bh=wRI6jUD8n3pqYa9rlANDY7qHd4FYrqNPi/GH1zyJVEI=; h=Date:From:To:Cc:Subject:References:In-Reply-To:List-ID:From; b=UgX/Ai1jRjGF4YXJRjczFcL96d7iwK7HmNoCKGZBhTdmdkNaM8F4JhvDji0WQZI6t RIDV8bXtR7nyYd6+S17bhwPqyFglLI+Qf9HFhSI7FRH4r/a73A/cl1HRpMXfHrYAd0 Mybd1O1T+QewX5vwNv3ORbVy3HjAuF9YHjMa86cA= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388338AbfBKUCN (ORCPT ); Mon, 11 Feb 2019 15:02:13 -0500 Received: from mail.kernel.org ([198.145.29.99]:52568 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728213AbfBKUCN (ORCPT ); Mon, 11 Feb 2019 15:02:13 -0500 Received: from localhost (unknown [77.138.135.184]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 9EF3520836; Mon, 11 Feb 2019 20:02:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1549915332; bh=wRI6jUD8n3pqYa9rlANDY7qHd4FYrqNPi/GH1zyJVEI=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=CTAJd333dZAXHsRHFINEJVjoZn9IaRmmtQR1cL7ugU2xANWj56mumK+ZuNPrQElvm y6nuK2+i/DV6qFHo7IPVjWTFfejd9iJ5ILPBUF0pc4RTKyjacvtmmhGih7hlCvc3Cz Cbgv1PuqeucfvEptS5j6P2QypgNK3wrsLb7h3SrA= Date: Mon, 11 Feb 2019 22:02:07 +0200 From: Leon Romanovsky To: Jason Gunthorpe Cc: Doug Ledford , RDMA mailing list , Moni Shoua , Saeed Mahameed , linux-netdev Subject: Re: [PATCH mlx5-next 2/2] net/mlx5: Factor out HCA capabilities functions Message-ID: <20190211200207.GD21447@mtr-leonro.mtl.com> References: <20190211115608.22677-1-leon@kernel.org> <20190211115608.22677-3-leon@kernel.org> <20190211195050.GL24706@mellanox.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="bg08WKrSYDhXBjb5" Content-Disposition: inline In-Reply-To: <20190211195050.GL24706@mellanox.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org --bg08WKrSYDhXBjb5 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Mon, Feb 11, 2019 at 07:50:55PM +0000, Jason Gunthorpe wrote: > On Mon, Feb 11, 2019 at 01:56:08PM +0200, Leon Romanovsky wrote: > > From: Leon Romanovsky > > > > Combine all HCA capabilities setters under one function > > and compile out the ODP related function in case kernel > > was compiled without ODP support. > > > > Signed-off-by: Leon Romanovsky > > .../net/ethernet/mellanox/mlx5/core/main.c | 47 +++++++++++++------ > > 1 file changed, 33 insertions(+), 14 deletions(-) > > > > diff --git a/drivers/net/ethernet/mellanox/mlx5/core/main.c b/drivers/net/ethernet/mellanox/mlx5/core/main.c > > index 6d45518edbdc..d7145ab6105d 100644 > > +++ b/drivers/net/ethernet/mellanox/mlx5/core/main.c > > @@ -459,6 +459,7 @@ static int handle_hca_cap_atomic(struct mlx5_core_dev *dev) > > return err; > > } > > > > +#ifdef CONFIG_INFINIBAND_ON_DEMAND_PAGING > > static int handle_hca_cap_odp(struct mlx5_core_dev *dev) > > { > > void *set_hca_cap; > > @@ -502,6 +503,7 @@ static int handle_hca_cap_odp(struct mlx5_core_dev *dev) > > kfree(set_ctx); > > return err; > > } > > +#endif > > > > static int handle_hca_cap(struct mlx5_core_dev *dev) > > { > > @@ -576,6 +578,35 @@ static int handle_hca_cap(struct mlx5_core_dev *dev) > > return err; > > } > > > > +static int set_hca_cap(struct mlx5_core_dev *dev) > > +{ > > + struct pci_dev *pdev = dev->pdev; > > + int err; > > + > > + err = handle_hca_cap(dev); > > + if (err) { > > + dev_err(&pdev->dev, "handle_hca_cap failed\n"); > > + goto out; > > + } > > + > > + err = handle_hca_cap_atomic(dev); > > + if (err) { > > + dev_err(&pdev->dev, "handle_hca_cap_atomic failed\n"); > > + goto out; > > + } > > + > > +#ifdef CONFIG_INFINIBAND_ON_DEMAND_PAGING > > + err = handle_hca_cap_odp(dev); > > + if (err) { > > + dev_err(&pdev->dev, "handle_hca_cap_odp failed\n"); > > + goto out; > > + } > > +#endif > > Adding > if (IS_ENABLED..) > return 0; > > To the top of handle_hca_cap_odp is alot better. Saeed gave comment that he prefers code to be compiled-out in case config is not set. In you suggestion, the code will exist and only with some optimizations enabled it will be thrown. Thanks > > Jason --bg08WKrSYDhXBjb5 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIcBAEBAgAGBQJcYdS/AAoJEORje4g2clinKK4P/jGzbYOKejcsAKGwIN8muTKE SlR0780sPSajhRpSg3RdspZrL+NRpitF8ryaTEjJVolOHrQ5ZZ30mVRI+mBZTfuz o49uWtvRRhHFetGcHNh2PV2XOTsy+ECyIAgj3jftYL9UjClqoXkUP9WNObozrLVM b1yqZRVuQ44Qv5AwqysZYdBFHnLJDDqWiFfofxLn443ifRybYN2ZqUMNHbPpylKE 22n9Cv/2n240Vbv0cVTh0K05RBfFRInJF1+zIYlshL6oqjwsTtO8n99aXuTXti8w OV9Ba4i+18JA9g51XJ1Kcd3pBJmqZd7hOj4PzZ+STKn3eUg1SR2r+aDxDKQ23qQi geOQNS926C2z+SDhHOmr5vlb/e51YY9/ou5EHXmgsF8F3LiKiBlXkhqFagkwRr7d 1oYFnbRgAnKAmnEvBQcT+M4Xkb3nkzrQbWC7ZKeBdgS5iVxUjzKKceaHh9KGBYy5 v66tBBYBZKlbSVvIp8ASp1bh8zblnoWS0GR1Flwg1Rpns6RPbPPbnpBzhRnuPIFB XY+zPzMFlE595U7onzWq3woPxXXgYG12U21iXPZjKkYQIZA2hRZZtWO5zr4hz0ik X09pVDOejDRFNbuyteVq7F81BhSi21dniDzZNDZCX5DGobZrdn4jCbULwvfyG0tz vLmvNBriXKU7LKAiB4cF =8CiD -----END PGP SIGNATURE----- --bg08WKrSYDhXBjb5--