From: Jakub Kicinski <kuba@kernel.org>
To: David Ahern <dsahern@kernel.org>
Cc: Saeed Mahameed <saeed@kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Jason Gunthorpe <jgg@nvidia.com>, Arnd Bergmann <arnd@arndb.de>,
Leon Romanovsky <leonro@nvidia.com>, Jiri Pirko <jiri@nvidia.com>,
Leonid Bloch <lbloch@nvidia.com>,
Itay Avraham <itayavr@nvidia.com>,
linux-kernel@vger.kernel.org, Saeed Mahameed <saeedm@nvidia.com>
Subject: Re: [PATCH V3 2/5] misc: mlx5ctl: Add mlx5ctl misc driver
Date: Tue, 28 Nov 2023 06:53:21 -0800 [thread overview]
Message-ID: <20231128065321.53d4d5bb@kernel.org> (raw)
In-Reply-To: <20231128044628.GA8901@u2004-local>
On Mon, 27 Nov 2023 21:46:28 -0700 David Ahern wrote:
> > You keep saying "debug information" which is really underselling this
> > driver. Are you not going to support mstreg?
> >
> > The common development flow as far as netdev is concerned is:
> > - some customer is interested in a new feature of a chip
> > - vendor hacks the support out of tree, using oot module and/or
> > user space tooling
> > - customer does a PoC with that hacked up, non-upstream solution
> > - if it works, vendor has to find out a proper upstream API,
> > hopefully agreed on with other vendors
> > - if it doesn't match customer needs the whole thing lands in the bin
> >
> > If the vendor specific PoC can be achieved with fully upstream software
> > we lose leverage to force vendors to agree on common APIs.
>
> Please elaborate on what "common" API there is to create here?
Damn, am I so bad at explaining basic things or y'all are spending
5 seconds reading this and are not really paying attention? :|
> Do you agree that each ASIC in the device is unique and hence will
> have made different trade offs - both features and nerd knobs to tune
> and affect the performance and runtime capabilities? If you do not
> agree, then we need to have a different discussion ...
> If you do, please elaborate on the outline of some common API that
> could possibly be done here.
We have devlink params. If that doesn't scale we can look for other
solutions but let's see them not scale _in practice_ first.
> You said no to the devlink parameters as a way to tune an ASIC.
What? When?
> This is a common, established tool, using a common, established message
> channel but in an open, free form way of letting a customer see what
> tunables there are for a specific H/W version and firmware version
> and then set them. That is about as common as can be for different
> vendors creating different ASICs with different goals and design
> objectives. Yet, you somehow expect all of them to have nerd knob X
> and tunable Y. That is not realistic.
I don't know what you're talking about.
> > This should all be self-evident for people familiar with netdev, but
> > I thought I'd spell it out.
> >
> > I understand that the device has other uses, but every modern NIC has
> > other uses. I don't see how netdev can agree to this driver as long as
> > there is potential for configuring random networking things thru it.
> > All major netdev vendors have a set of out of tree tools / "expose
> > everything misc drivers", "for debug". They will soon follow your
> > example if we let this in.
>
> Out of tree drivers are already ingrained into customers now. Mellanox
> (in this case) has tried many different angles at getting access to H/W
> unique tunables (i.e., the devlink comment) and now dumping huge amounts
> of data. Your response to the devlink parameters attempt is to basically
> abuse the firmware upgrade command as a way to push a binary blob that
> can contain said settings (and I still have not fully wrapped my head
> around the fact that you suggested that option).
>
> What specifically are you looking for? There are different vendors and
> different h/w options for specific market based reasons. Your hard line
> stance against needs like this is what is pushing out of tree drivers
> and tools to continue.
Sounds like you'd like a similar open-ended interface for your device.
next prev parent reply other threads:[~2023-11-28 14:53 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-21 7:06 [PATCH V3 0/5] mlx5 ConnectX control misc driver Saeed Mahameed
2023-11-21 7:06 ` [PATCH V3 1/5] mlx5: Add aux dev for ctl interface Saeed Mahameed
2023-11-21 7:06 ` [PATCH V3 2/5] misc: mlx5ctl: Add mlx5ctl misc driver Saeed Mahameed
2023-11-27 13:36 ` Greg Kroah-Hartman
2023-11-27 14:40 ` Jason Gunthorpe
2023-11-27 15:51 ` Greg Kroah-Hartman
2023-11-27 16:17 ` Jason Gunthorpe
2023-11-27 18:27 ` Greg Kroah-Hartman
2023-11-27 19:26 ` Saeed Mahameed
2023-11-28 0:07 ` Jakub Kicinski
2023-11-28 4:46 ` David Ahern
2023-11-28 14:53 ` Jakub Kicinski [this message]
2023-11-28 16:24 ` Jason Gunthorpe
2023-11-28 16:44 ` Jakub Kicinski
2023-11-28 17:52 ` Jason Gunthorpe
2023-11-28 18:33 ` Jakub Kicinski
2023-11-28 19:55 ` Saeed Mahameed
2023-11-28 20:10 ` Saeed Mahameed
2023-11-29 9:08 ` Greg Kroah-Hartman
2023-12-04 21:37 ` Aron Silverton
2023-12-05 2:52 ` Jakub Kicinski
2023-12-05 17:11 ` Aron Silverton
2023-12-06 4:48 ` Jakub Kicinski
2023-12-07 15:54 ` David Ahern
2023-12-07 16:20 ` Jakub Kicinski
2023-12-07 16:41 ` Aron Silverton
2023-12-07 17:23 ` Jakub Kicinski
2023-12-07 18:06 ` Aron Silverton
2023-12-07 19:02 ` Saeed Mahameed
2023-12-08 5:29 ` Greg Kroah-Hartman
2023-12-08 13:34 ` Jason Gunthorpe
2023-12-08 5:27 ` Greg Kroah-Hartman
2023-12-08 12:52 ` Jason Gunthorpe
2023-12-07 18:54 ` Saeed Mahameed
2023-12-13 16:55 ` Christoph Hellwig
2023-11-28 19:31 ` Saeed Mahameed
2023-11-28 16:52 ` David Ahern
2023-11-27 18:59 ` Greg Kroah-Hartman
2023-11-29 9:08 ` Saeed Mahameed
2023-11-29 9:20 ` Greg Kroah-Hartman
2023-11-29 13:02 ` Jason Gunthorpe
2023-11-29 15:41 ` Greg Kroah-Hartman
2023-11-29 18:07 ` Jason Gunthorpe
2023-11-21 7:06 ` [PATCH V3 3/5] misc: mlx5ctl: Add info ioctl Saeed Mahameed
2023-11-27 19:09 ` Greg Kroah-Hartman
2023-11-27 20:39 ` Saeed Mahameed
2023-11-28 9:13 ` Greg Kroah-Hartman
2023-11-29 8:53 ` Saeed Mahameed
2023-11-21 7:06 ` [PATCH V3 4/5] misc: mlx5ctl: Add command rpc ioctl Saeed Mahameed
2023-11-21 7:06 ` [PATCH V3 5/5] misc: mlx5ctl: Add umem reg/unreg ioctl Saeed Mahameed
2023-11-21 20:44 ` Jakub Kicinski
2023-11-21 21:04 ` Saeed Mahameed
2023-11-21 22:10 ` Jakub Kicinski
2023-11-21 22:52 ` Saeed Mahameed
2023-11-21 22:18 ` David Ahern
2023-11-21 22:46 ` Saeed Mahameed
2023-11-21 23:46 ` Jason Gunthorpe
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=20231128065321.53d4d5bb@kernel.org \
--to=kuba@kernel.org \
--cc=arnd@arndb.de \
--cc=dsahern@kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=itayavr@nvidia.com \
--cc=jgg@nvidia.com \
--cc=jiri@nvidia.com \
--cc=lbloch@nvidia.com \
--cc=leonro@nvidia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=saeed@kernel.org \
--cc=saeedm@nvidia.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).