Message ID | 20210607182014.3384922-1-kgraul@linux.ibm.com (mailing list archive) |
---|---|
Headers | show |
Series | net/smc: Add SMC statistic support | expand |
From: Karsten Graul <kgraul@linux.ibm.com> Date: Mon, 7 Jun 2021 20:20:10 +0200 > Please apply the following patch series for smc to netdev's net-next tree. > > 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. Why not use ethtool stats? Thank you.
Hi Dave, Thank you for looking into this. SMC is a protocol interacting with PCI devices (like RoCE Cards) and runs on top of TCP protocol. As SMC is a network protocol and not an ethernet device driver, we decided to use the generic netlink interface. 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. Ethtool's predefined netlink interfaces are specifically tailored for the ethernet device internals and needs and these netlink interfaces wouldn't really fit to the use cases of the SMC protocol. Other protocols (like tipc, ncsi, ieee802154, tcp metrics) under the net subsystem use also similar generic netlink mechanism for collecting and transporting protocol specific information to userspace. This also encouraged us to make the generic netlink decision for exposing the gathered SMC protocol statistics and internal information to the userspace. Regards, Guvenc Gulce On 07/06/2021 22:33, David Miller wrote: > From: Karsten Graul <kgraul@linux.ibm.com> > Date: Mon, 7 Jun 2021 20:20:10 +0200 > >> Please apply the following patch series for smc to netdev's net-next tree. >> >> 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. > Why not use ethtool stats? > > Thank you.
> On 07/06/2021 22:33, David Miller wrote: >> From: Karsten Graul <kgraul@linux.ibm.com> >> Date: Mon, 7 Jun 2021 20:20:10 +0200 >> >>> Please apply the following patch series for smc to netdev's net-next tree. >>> >>> 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. >> Why not use ethtool stats? >> >> Thank you. On 08/06/2021 10:59, Guvenc Gulce wrote: > Hi Dave, > Thank you for looking into this. SMC is a protocol interacting with PCI devices (like RoCE Cards) and > runs on top of TCP protocol. As SMC is a network protocol and not an ethernet device driver, we > decided to use the generic netlink interface. 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. > Ethtool's predefined netlink interfaces are specifically tailored for the ethernet device internals and needs > and these netlink interfaces wouldn't really fit to the use cases of the SMC protocol. > > Other protocols (like tipc, ncsi, ieee802154, tcp metrics) under the net subsystem use also similar generic > netlink mechanism for collecting and transporting protocol specific information to userspace. This also > encouraged us to make the generic netlink decision for exposing the gathered SMC protocol statistics > and internal information to the userspace. > > Regards, > > Guvenc Gulce > I just wanted to touch base with you regarding Guvenc's response where he explained our ideas about the statistics interface. We would be happy to hear your thoughts on how to proceed. -- Karsten