From: Leon Romanovsky <leon@kernel.org>
To: Jason Gunthorpe <jgg@nvidia.com>
Cc: Shiraz Saleem <shiraz.saleem@intel.com>,
dledford@redhat.com, kuba@kernel.org, davem@davemloft.net,
linux-rdma@vger.kernel.org, netdev@vger.kernel.org,
david.m.ertman@intel.com, anthony.l.nguyen@intel.com
Subject: Re: [PATCH v5 06/22] i40e: Register auxiliary devices to provide RDMA
Date: Wed, 19 May 2021 18:43:24 +0300 [thread overview]
Message-ID: <YKUyHBegLKDlYYoN@unreal> (raw)
In-Reply-To: <20210519134349.GK1002214@nvidia.com>
On Wed, May 19, 2021 at 10:43:49AM -0300, Jason Gunthorpe wrote:
> On Wed, May 19, 2021 at 03:51:46PM +0300, Leon Romanovsky wrote:
> > On Fri, May 14, 2021 at 09:11:58AM -0500, Shiraz Saleem wrote:
> > > Convert i40e to use the auxiliary bus infrastructure to export
> > > the RDMA functionality of the device to the RDMA driver.
> > > Register i40e client auxiliary RDMA device on the auxiliary bus per
> > > PCIe device function for the new auxiliary rdma driver (irdma) to
> > > attach to.
> > >
> > > The global i40e_register_client and i40e_unregister_client symbols
> > > will be obsoleted once irdma replaces i40iw in the kernel
> > > for the X722 device.
> > >
> > > Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com>
> > > drivers/net/ethernet/intel/Kconfig | 1 +
> > > drivers/net/ethernet/intel/i40e/i40e.h | 2 +
> > > drivers/net/ethernet/intel/i40e/i40e_client.c | 152 ++++++++++++++++++++++----
> > > drivers/net/ethernet/intel/i40e/i40e_main.c | 1 +
> > > 4 files changed, 136 insertions(+), 20 deletions(-)
> >
> > The amount of obfuscation in this driver is astonishing.
> >
> > I would expect that after this series, the i40e_client_add_*() would
> > be cleaned, for example simple grep of I40E_CLIENT_VERSION_MAJOR
> > shows that i40e_register_client() still have no-go code.
>
> While it would be nice to see i40e fully cleaned I think we agreed to
> largely ignore it as-is so long as the new driver's aux implementation
> was sane.
It is hard to say, the code is so obfuscated with many layers in between.
For example, I tried to follow where and how they use IDA index that is used
in aux device creation and went lost. Sometimes they take it from PF, sometimes
from the client from different allocation pool.
If client logic goes, we will see less code which should be similar for
netdev and RDMA. It is not the case now.
Thanks
>
> Jason
next prev parent reply other threads:[~2021-05-19 15:43 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-14 14:11 [PATCH v5 00/22] Add Intel Ethernet Protocol Driver for RDMA (irdma) Shiraz Saleem
2021-05-14 14:11 ` [PATCH v5 01/22] iidc: Introduce iidc.h Shiraz Saleem
2021-05-14 14:11 ` [PATCH v5 02/22] ice: Initialize RDMA support Shiraz Saleem
2021-05-14 14:11 ` [PATCH v5 03/22] ice: Implement iidc operations Shiraz Saleem
2021-05-14 14:11 ` [PATCH v5 04/22] ice: Register auxiliary device to provide RDMA Shiraz Saleem
2021-05-19 11:31 ` Leon Romanovsky
2021-05-19 16:51 ` Saleem, Shiraz
2021-05-14 14:11 ` [PATCH v5 05/22] i40e: Prep i40e header for aux bus conversion Shiraz Saleem
2021-05-14 14:11 ` [PATCH v5 06/22] i40e: Register auxiliary devices to provide RDMA Shiraz Saleem
2021-05-19 12:51 ` Leon Romanovsky
2021-05-19 13:43 ` Jason Gunthorpe
2021-05-19 15:43 ` Leon Romanovsky [this message]
2021-05-19 16:51 ` Saleem, Shiraz
2021-05-14 14:11 ` [PATCH v5 07/22] RDMA/irdma: Register auxiliary driver and implement private channel OPs Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 08/22] RDMA/irdma: Implement device initialization definitions Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 09/22] RDMA/irdma: Implement HW Admin Queue OPs Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 10/22] RDMA/irdma: Add HMC backing store setup functions Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 11/22] RDMA/irdma: Add privileged UDA queue implementation Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 12/22] RDMA/irdma: Add QoS definitions Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 13/22] RDMA/irdma: Add connection manager Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 14/22] RDMA/irdma: Add PBLE resource manager Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 15/22] RDMA/irdma: Implement device supported verb APIs Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 16/22] RDMA/irdma: Add RoCEv2 UD OP support Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 17/22] RDMA/irdma: Add user/kernel shared libraries Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 18/22] RDMA/irdma: Add miscellaneous utility definitions Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 19/22] RDMA/irdma: Add dynamic tracing for CM Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 20/22] RDMA/irdma: Add ABI definitions Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 21/22] RDMA/irdma: Add irdma Kconfig/Makefile and remove i40iw Shiraz Saleem
2021-05-14 14:12 ` [PATCH v5 22/22] RDMA/irdma: Update MAINTAINERS file Shiraz Saleem
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YKUyHBegLKDlYYoN@unreal \
--to=leon@kernel.org \
--cc=anthony.l.nguyen@intel.com \
--cc=davem@davemloft.net \
--cc=david.m.ertman@intel.com \
--cc=dledford@redhat.com \
--cc=jgg@nvidia.com \
--cc=kuba@kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=shiraz.saleem@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).