mptcp: add mib for infinite map sending
authorGeliang Tang <geliang.tang@suse.com>
Fri, 22 Apr 2022 21:55:41 +0000 (14:55 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sat, 23 Apr 2022 10:51:05 +0000 (11:51 +0100)
This patch adds a new mib named MPTCP_MIB_INFINITEMAPTX, increase it
when a infinite mapping has been sent out.

Signed-off-by: Geliang Tang <geliang.tang@suse.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/mptcp/mib.c
net/mptcp/mib.h
net/mptcp/protocol.c

index e55d3df..d93a8c9 100644 (file)
@@ -24,6 +24,7 @@ static const struct snmp_mib mptcp_snmp_list[] = {
        SNMP_MIB_ITEM("MPJoinAckRx", MPTCP_MIB_JOINACKRX),
        SNMP_MIB_ITEM("MPJoinAckHMacFailure", MPTCP_MIB_JOINACKMAC),
        SNMP_MIB_ITEM("DSSNotMatching", MPTCP_MIB_DSSNOMATCH),
+       SNMP_MIB_ITEM("InfiniteMapTx", MPTCP_MIB_INFINITEMAPTX),
        SNMP_MIB_ITEM("InfiniteMapRx", MPTCP_MIB_INFINITEMAPRX),
        SNMP_MIB_ITEM("DSSNoMatchTCP", MPTCP_MIB_DSSTCPMISMATCH),
        SNMP_MIB_ITEM("DataCsumErr", MPTCP_MIB_DATACSUMERR),
index 0057617..529d07a 100644 (file)
@@ -17,6 +17,7 @@ enum linux_mptcp_mib_field {
        MPTCP_MIB_JOINACKRX,            /* Received an ACK + MP_JOIN */
        MPTCP_MIB_JOINACKMAC,           /* HMAC was wrong on ACK + MP_JOIN */
        MPTCP_MIB_DSSNOMATCH,           /* Received a new mapping that did not match the previous one */
+       MPTCP_MIB_INFINITEMAPTX,        /* Sent an infinite mapping */
        MPTCP_MIB_INFINITEMAPRX,        /* Received an infinite mapping */
        MPTCP_MIB_DSSTCPMISMATCH,       /* DSS-mapping did not map with TCP's sequence numbers */
        MPTCP_MIB_DATACSUMERR,          /* The data checksum fail */
index 161c07f..4581c57 100644 (file)
@@ -1239,6 +1239,7 @@ static void mptcp_update_infinite_map(struct mptcp_sock *msk,
        mpext->infinite_map = 1;
        mpext->data_len = 0;
 
+       MPTCP_INC_STATS(sock_net(ssk), MPTCP_MIB_INFINITEMAPTX);
        mptcp_subflow_ctx(ssk)->send_infinite_map = 0;
        pr_fallback(msk);
        __mptcp_do_fallback(msk);