Re: [PATCH net-next 0/2] net/smc: introduce ringbufs usage statistics

Wen Gu
2024-08-06T11:54:40Z

On 2024/8/6 11:52, shaozhengchao wrote:
> Hi Wen Gu:
>    Your patchset looks fine. However, the current smc-tools tool is not
> supported, so will you update the smc-tools tool?
>
> Thank you
>
> Zhengchao Shao
>

Hi, Zhengchao.

Yes, after these kernel patches are merged, I will submit the corresponding
modification to smc-tools.

Thanks!

> On 2024/8/5 17:05, Wen Gu wrote:
>> Currently, we have histograms that show the sizes of ringbufs that ever
>> used by SMC connections. However, they are always incremental and since
>> SMC allows the reuse of ringbufs, we cannot know the actual amount of
>> ringbufs being allocated or actively used.
>>
>> So this patch set introduces statistics for the amount of ringbufs that
>> actually allocated by link group and actively used by connections of a
>> certain net namespace, so that we can react based on these memory usage
>> information, e.g. active fallback to TCP.
>>
>> With appropriate adaptations of smc-tools, we can obtain these ringbufs
>> usage information:
>>
>> $ smcr -d linkgroup
>> LG-ID    : 00000500
>> LG-Role  : SERV
>> LG-Type  : ASYML
>> VLAN     : 0
>> PNET-ID  :
>> Version  : 1
>> Conns    : 0
>> Sndbuf   : 12910592 B    <-
>> RMB      : 12910592 B    <-
>>
>> or
>>
>> $ smcr -d stats
>> [...]
>> RX Stats
>>    Data transmitted (Bytes)      869225943 (869.2M)
>>    Total requests                 18494479
>>    Buffer usage  (Bytes)          12910592 (12.31M)  <-
>>    [...]
>>
>> TX Stats
>>    Data transmitted (Bytes)    12760884405 (12.76G)
>>    Total requests                 36988338
>>    Buffer usage  (Bytes)          12910592 (12.31M)  <-
>>    [...]
>> [...]
>>
>> Wen Gu (2):
>>    net/smc: introduce statistics for allocated ringbufs of link group
>>    net/smc: introduce statistics for ringbufs usage of net namespace
>>
>>   include/uapi/linux/smc.h |  6 ++++
>>   net/smc/smc_core.c       | 74 ++++++++++++++++++++++++++++++++++------
>>   net/smc/smc_core.h       |  2 ++
>>   net/smc/smc_stats.c      |  8 +++++
>>   net/smc/smc_stats.h      | 27 ++++++++++-----
>>   5 files changed, 97 insertions(+), 20 deletions(-)
>>