All of lore.kernel.org
 help / color / mirror / Atom feed
From: Parav Pandit <parav@nvidia.com>
To: Jakub Kicinski <kuba@kernel.org>
Cc: Sunil Sudhakar Rani <sunrani@nvidia.com>,
	Saeed Mahameed <saeedm@nvidia.com>, Jiri Pirko <jiri@nvidia.com>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	"davem@davemloft.net" <davem@davemloft.net>,
	Bodong Wang <bodong@nvidia.com>
Subject: RE: [PATCH net-next 1/2] devlink: Add support to set port function as trusted
Date: Wed, 12 Jan 2022 04:40:01 +0000	[thread overview]
Message-ID: <PH0PR12MB5481E33C9A07F2C3DEB77F38DC529@PH0PR12MB5481.namprd12.prod.outlook.com> (raw)
In-Reply-To: <20220111115704.4312d280@kicinski-fedora-PC1C0HJN.hsd1.ca.comcast.net>


> From: Jakub Kicinski <kuba@kernel.org>
> Sent: Wednesday, January 12, 2022 1:27 AM
> 
> On Tue, 11 Jan 2022 19:39:37 +0000 Parav Pandit wrote:
> > > From: Jakub Kicinski <kuba@kernel.org>
> > > Sent: Wednesday, January 12, 2022 12:54 AM
> > >
> > > On Tue, 11 Jan 2022 18:26:16 +0000 Parav Pandit wrote:
> > > > It isn't trusted feature. The scope in few weeks got expanded from
> > > > trusted to more granular at controlling capabilities. One that
> > > > came up was ipsec or other offloads that consumes more device
> resources.
> > >
> > > That's what I thought. Resource control is different than
> > > privileges, and requires a different API.
> > >
> > It's the capability that is turned on/off.
> > A device is composed based on what is needed. ipsec offload is not always
> needed.
> > Its counter intuitive to expose some low level hardware resource to disable
> ipsec indirectly.
> > So it is better to do as capability/param rather than some resource.
> > It is capability is more than just resource.
> 
> Wouldn't there be some limitation on the number of SAs or max throughput or
> such to limit on VF hogging the entire crypto path?
>
The fairness among VFs is present via the QoS knobs. Hence it doesn't hogg the entire crypto path.
 
> I was expecting such a knob, and then turning it to 0 would effectively remove
> the capability (FW can completely hide it or driver ignore it).
> 
> 
> 
> > > > A prometheous kind of monitoring software wants to monitor the
> > > > physical port counters, running in a container. Such container
> > > > doesn't have direct access to the PF or physical representor. Just
> > > > for sake of monitoring counters, user doesn't want to run the
> > > > monitoring container in root net ns.
> > >
> > > Containerizing monitors seems very counter-intuitive to me.
> > >
> > May be. But it is in use at [1] for a long time now.
> >
> > [1] docker run -p 9090:9090 prom/prometheus
> 
> How is it "in use" if we haven't merged the patch to enable it? :) What does it
> monitor? PHYs port does not include east-west traffic, exposing just the PHYs
> stats seems like a half measure.
>
Containerized monitors are in use by running in monitor in same net ns of the PF having full access to the PF.
The monitor is interested in physical port counters related to link transitions, link errors, buffer overruns etc.


> > > > For sure we prefer the bona fide Linux uAPI for standard features.
> > > > But internal knobs of how to do steering etc, is something not
> > > > generic enough. May be only those quirks live in the port function
> > > > params and rest in standard uAPIs?
> > >
> > > Something talks to that steering API, and it's not netdev. So please
> > > don't push problems which are not ours onto us.
> > Not sure I follow you.
> > Netdev of a mlx5 function talks to the driver internal steering API in
> > addition to other drivers operating this mlx5 function.
> 
> But there is no such thing as "steering API" in netdev. We can expose the
> functionality we do have, if say PTP requires some steering then enabling PTP
> implies the required steering is enabled. "steering API"
> as an entity is meaningless to a netdev user.
It is the internal mlx5 implementation of how to do steering, triggered by netdev ndo's and other devices callback.
There are multiple options on how steering is done.
Such as sw_steering or dev managed steering.
There is already a control knob to choose sw vs dev steering as devlink param on the PF at [1].
This [1] device specific param is only limited to PF. For VFs, HV need to enable/disable this capability on selected VF.
API wise nothing drastic is getting added here, it's only on different object. (instead of device, it is port function).

[1] https://www.kernel.org/doc/html/v5.8/networking/device_drivers/mellanox/mlx5.html#devlink-parameters

  reply	other threads:[~2022-01-12  4:40 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-22 14:43 [PATCH net-next 0/2] Extend devlink for port trust setting Sunil Rani
2021-11-22 14:43 ` [PATCH net-next 1/2] devlink: Add support to set port function as trusted Sunil Rani
2021-11-23  1:22   ` Jakub Kicinski
2021-11-30 22:17     ` Sunil Sudhakar Rani
2021-12-01  3:12       ` Jakub Kicinski
2021-12-01  7:07         ` Saeed Mahameed
2021-12-02 17:31           ` Jakub Kicinski
2021-12-02 19:06             ` Saeed Mahameed
2021-12-15 18:19             ` Saeed Mahameed
2021-12-15 19:22               ` Jakub Kicinski
2021-12-15 22:15                 ` Saeed Mahameed
2021-12-15 23:04                   ` Jakub Kicinski
2021-12-16 16:17                     ` Sunil Sudhakar Rani
2021-12-16 16:28                       ` Jakub Kicinski
2022-01-11 16:57                         ` Parav Pandit
2022-01-11 18:20                           ` Jakub Kicinski
2022-01-11 18:26                             ` Parav Pandit
2022-01-11 19:24                               ` Jakub Kicinski
2022-01-11 19:39                                 ` Parav Pandit
2022-01-11 19:57                                   ` Jakub Kicinski
2022-01-12  4:40                                     ` Parav Pandit [this message]
2022-01-13  0:35                                       ` Jakub Kicinski
2022-01-13  3:37                                         ` Parav Pandit
2022-01-14  4:42                                           ` Jakub Kicinski
2022-01-14  4:52                                             ` Parav Pandit
2022-01-15  2:34                                               ` Jakub Kicinski
2022-01-15  6:15                                                 ` Saeed Mahameed
2022-01-18 18:02                                                   ` Jakub Kicinski
2022-01-18 22:33                                                     ` Saeed Mahameed
2022-01-19  0:16                                                       ` Jakub Kicinski
2022-01-19  5:49                                                         ` Parav Pandit
2022-01-20  0:40                                                           ` Saeed Mahameed
2022-01-20  4:52                                                             ` Parav Pandit
2022-01-20  6:03                                                               ` Saeed Mahameed
2022-01-20  6:19                                                                 ` Parav Pandit
2022-02-03 18:35                                                             ` Parav Pandit
2022-02-03 19:16                                                               ` Saeed Mahameed
2022-02-07 14:45                                                                 ` Parav Pandit
2022-02-09  4:21                                                                   ` Parav Pandit
2022-01-14  9:15                             ` Jiri Pirko
2022-01-15  2:10                               ` Jakub Kicinski
2021-11-22 14:43 ` [PATCH net-next 2/2] net/mlx5: SF/VF, Port function trust set support Sunil Rani

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=PH0PR12MB5481E33C9A07F2C3DEB77F38DC529@PH0PR12MB5481.namprd12.prod.outlook.com \
    --to=parav@nvidia.com \
    --cc=bodong@nvidia.com \
    --cc=davem@davemloft.net \
    --cc=jiri@nvidia.com \
    --cc=kuba@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=saeedm@nvidia.com \
    --cc=sunrani@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.