[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <148968b2-6d8e-476b-afee-5f1b15713c7e@kernel.org>
Date: Fri, 1 Mar 2024 08:45:52 -0700
From: David Ahern <dsahern@...nel.org>
To: Petr Machata <petrm@...dia.com>, "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>, netdev@...r.kernel.org
Cc: Ido Schimmel <idosch@...dia.com>, Simon Horman <horms@...nel.org>,
mlxsw@...dia.com
Subject: Re: [PATCH net-next v2 4/7] net: nexthop: Expose nexthop group stats
to user space
On 2/29/24 11:16 AM, Petr Machata wrote:
> From: Ido Schimmel <idosch@...dia.com>
>
> Add netlink support for reading NH group stats.
>
> This data is only for statistics of the traffic in the SW datapath. HW
> nexthop group statistics will be added in the following patches.
>
> Emission of the stats is keyed to a new op_stats flag to avoid cluttering
> the netlink message with stats if the user doesn't need them:
> NHA_OP_FLAG_DUMP_STATS.
>
> Co-developed-by: Petr Machata <petrm@...dia.com>
> Signed-off-by: Petr Machata <petrm@...dia.com>
> Signed-off-by: Ido Schimmel <idosch@...dia.com>
> ---
>
> Notes:
> v2:
> - Use uint to encode NHA_GROUP_STATS_ENTRY_PACKETS
> - Rename jump target in nla_put_nh_group_stats() to avoid
> having to rename further in the patchset.
>
> include/uapi/linux/nexthop.h | 30 ++++++++++++
> net/ipv4/nexthop.c | 92 ++++++++++++++++++++++++++++++++----
> 2 files changed, 114 insertions(+), 8 deletions(-)
>
> @@ -104,4 +109,29 @@ enum {
>
> #define NHA_RES_BUCKET_MAX (__NHA_RES_BUCKET_MAX - 1)
>
> +enum {
> + NHA_GROUP_STATS_UNSPEC,
> +
> + /* nested; nexthop group entry stats */
> + NHA_GROUP_STATS_ENTRY,
> +
> + __NHA_GROUP_STATS_MAX,
> +};
> +
> +#define NHA_GROUP_STATS_MAX (__NHA_GROUP_STATS_MAX - 1)
> +
> +enum {
> + NHA_GROUP_STATS_ENTRY_UNSPEC,
> +
> + /* u32; nexthop id of the nexthop group entry */
> + NHA_GROUP_STATS_ENTRY_ID,
> +
> + /* uint; number of packets forwarded via the nexthop group entry */
why not make it a u64?
> + NHA_GROUP_STATS_ENTRY_PACKETS,
> +
> + __NHA_GROUP_STATS_ENTRY_MAX,
> +};
> +
> +#define NHA_GROUP_STATS_ENTRY_MAX (__NHA_GROUP_STATS_ENTRY_MAX - 1)
> +
> #endif
Reviewed-by: David Ahern <dsahern@...nel.org>
Powered by blists - more mailing lists