[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200817141246.GB2291654@lunn.ch>
Date: Mon, 17 Aug 2020 16:12:46 +0200
From: Andrew Lunn <andrew@...n.ch>
To: Ido Schimmel <idosch@...sch.org>
Cc: netdev@...r.kernel.org, davem@...emloft.net, kuba@...nel.org,
jiri@...dia.com, amcohen@...dia.com, danieller@...dia.com,
mlxsw@...dia.com, roopa@...dia.com, dsahern@...il.com,
f.fainelli@...il.com, vivien.didelot@...il.com, saeedm@...dia.com,
tariqt@...dia.com, ayal@...dia.com, eranbe@...dia.com,
mkubecek@...e.cz, Ido Schimmel <idosch@...dia.com>
Subject: Re: [RFC PATCH net-next 1/6] devlink: Add device metric
infrastructure
On Mon, Aug 17, 2020 at 03:50:54PM +0300, Ido Schimmel wrote:
> From: Ido Schimmel <idosch@...dia.com>
>
> Add an infrastructure that allows device drivers to dynamically register
> and unregister their supported metrics with devlink. The metrics and
> their values are exposed to user space which can decide to group certain
> metrics together. This allows user space to request a filtered dump of
> only the metrics member in the provided group.
>
> Currently, the only supported metric type is a counter, but histograms
> will be added in the future for devices that implement histogram agents
> in hardware.
Hi Ido, Amit
Some initial thoughts.
I said this during netdevconf, i think we need some way to group
metrics together. The example you gave was supporting the counters for
a TCAM and VXLAN offload. I expect users are wanting to get just the
TCAM counters, or just the VXLAN counters.
Maybe one way to support this is to allow the create function to pass
the group, rather than defaulting it to 0? The drive can then split
them up, if it wants to. Otherwise, provide some other sort of
identifier which can be used, maybe a hardware block name?
One big difference between this API and normal netlink statistics is
that each devlink counter is totally independent of every other
devlink counter. You cannot compare counters, because they are not
atomically read. Most hardware i come across supports snapshots of the
counters. So with the current ethtool counters, you snapshot them,
read them all into one buffer, and then return them to user space. The
rtnl lock prevents two snapshots at the same time.
Andrew
Powered by blists - more mailing lists