[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210616145258.2381446-1-kgraul@linux.ibm.com>
Date: Wed, 16 Jun 2021 16:52:54 +0200
From: Karsten Graul <kgraul@...ux.ibm.com>
To: David Miller <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>
Cc: Heiko Carstens <hca@...ux.ibm.com>,
Stefan Raspl <raspl@...ux.ibm.com>, netdev@...r.kernel.org,
linux-s390@...r.kernel.org, guvenc@...ux.ibm.com
Subject: [PATCH net-next v2 0/4] net/smc: Add SMC statistic support
Please apply the following patch series for smc to netdev's net-next tree.
This v2 is a resend of the code contained in v1 but with an updated
cover letter to describe why we have chosen to use the generic netlink
mechanism to access the smc protocol's statistic data.
The patchset adds statistic support to the SMC protocol. Per-cpu
variables are used to collect the statistic information for better
performance and for reducing concurrency pitfalls. The code that is
collecting statistic data is implemented in macros to increase code
reuse and readability.
The generic netlink mechanism in SMC is extended to provide the
collected statistics to userspace.
Network namespace awareness is also part of the statistics
implementation.
SMC is a protocol interacting with PCI devices (like RoCE Cards) and
runs on top of the TCP protocol. As SMC is a network protocol and not
an ethernet device driver, we decided to use the generic netlink
interface. This should be comparable to what other protocols in the
net subsystem like tipc, ncsi, ieee802154 or tcp, et al, do.
There is already an established internal generic netlink interface
mechanism in SMC which is used to collect SMC Protocol internal
information. This patchset extends that existing mechanism.
Guvenc Gulce (4):
net/smc: Add SMC statistics support
net/smc: Add netlink support for SMC statistics
net/smc: Add netlink support for SMC fallback statistics
net/smc: Make SMC statistics network namespace aware
include/net/net_namespace.h | 4 +
include/net/netns/smc.h | 16 ++
include/uapi/linux/smc.h | 83 ++++++++
net/smc/Makefile | 2 +-
net/smc/af_smc.c | 102 +++++++--
net/smc/smc_core.c | 13 +-
net/smc/smc_netlink.c | 11 +
net/smc/smc_netlink.h | 2 +-
net/smc/smc_rx.c | 8 +
net/smc/smc_stats.c | 413 ++++++++++++++++++++++++++++++++++++
net/smc/smc_stats.h | 266 +++++++++++++++++++++++
net/smc/smc_tx.c | 18 +-
12 files changed, 917 insertions(+), 21 deletions(-)
create mode 100644 include/net/netns/smc.h
create mode 100644 net/smc/smc_stats.c
create mode 100644 net/smc/smc_stats.h
--
2.25.1
Powered by blists - more mailing lists