[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20211026094743.390224ec@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com>
Date: Tue, 26 Oct 2021 09:47:43 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Parav Pandit <parav@...dia.com>
Cc: "davem@...emloft.net" <davem@...emloft.net>,
Saeed Mahameed <saeedm@...dia.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
Leon Romanovsky <leonro@...dia.com>
Subject: Re: [PATCH net-next] net/mlx5: remove the recent devlink params
On Tue, 26 Oct 2021 15:53:17 +0000 Parav Pandit wrote:
> Hi Jakub,
>
> > From: Jakub Kicinski <kuba@...nel.org>
> > Sent: Tuesday, October 26, 2021 9:00 PM
> > To: davem@...emloft.net
> > Cc: Saeed Mahameed <saeedm@...dia.com>; netdev@...r.kernel.org; Leon
> > Romanovsky <leonro@...dia.com>; Jakub Kicinski <kuba@...nel.org>
> > Subject: [PATCH net-next] net/mlx5: remove the recent devlink params
> >
> > revert commit 46ae40b94d88 ("net/mlx5: Let user configure io_eq_size
> > param") revert commit a6cb08daa3b4 ("net/mlx5: Let user configure
> > event_eq_size param") revert commit 554604061979 ("net/mlx5: Let user
> > configure max_macs param")
> >
> > The EQE parameters are applicable to more drivers, they should be configured
> > via standard API, probably ethtool. Example of another driver needing
> > something similar:
>
> ethool is not a good choice for following reasons.
>
> 1. EQs of the mlx5 core devlink instance is used by multiple auxiliary devices, namely net, rdma, vdpa.
> 2. And sometime netdevice doesn't even exists to operate via ethtool (but devlink instance exist to serve other devices).
> 3. ethtool doesn't have notion set the config and apply (like devlink reload)
> Such reload operation is useful when user wants to configure more than one parameter and initialize the device only once.
> Otherwise dynamically changing parameter results in multiple device re-init sequence that increases device setup time.
Sure these are good points. OTOH devlink doesn't have any notion of
queues, IRQ vectors etc today so it doesn't really fit there, either.
> Should we define the devlink resources in the devlink layer, instead of driver?
I'm not sure how the EQE fits into the existing devlink objects.
params are not much of an API, it's a garbage bag.
> So that multiple drivers can make use of them without redefinition?
Yes, please.
Powered by blists - more mailing lists