From patchwork Fri Aug 28 07:16:02 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Geliang Tang X-Patchwork-Id: 1353033 X-Patchwork-Delegate: matthieu.baerts@tessares.net Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.01.org (client-ip=2001:19d0:306:5::1; helo=ml01.01.org; envelope-from=mptcp-bounces@lists.01.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=VUXwzFAX; dkim-atps=neutral Received: from ml01.01.org (ml01.01.org [IPv6:2001:19d0:306:5::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4Bd9zd4Mmqz9sPB for ; Fri, 28 Aug 2020 17:22:53 +1000 (AEST) Received: from ml01.vlan13.01.org (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id BD2DE1283DC3D; Fri, 28 Aug 2020 00:22:51 -0700 (PDT) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2607:f8b0:4864:20::102a; helo=mail-pj1-x102a.google.com; envelope-from=geliangtang@gmail.com; receiver= Received: from mail-pj1-x102a.google.com (mail-pj1-x102a.google.com [IPv6:2607:f8b0:4864:20::102a]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 353021283DC3B for ; Fri, 28 Aug 2020 00:22:50 -0700 (PDT) Received: by mail-pj1-x102a.google.com with SMTP id ds1so129777pjb.1 for ; Fri, 28 Aug 2020 00:22:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :in-reply-to:references; bh=fM2UTq+5eeNazzQ29QtHZ+7bDIlOYwjHlxlhJVxqbWw=; b=VUXwzFAX3bm92s5aptvTp8+3nAYfdbsg03rmfsYgPMUx+aAverpDMGtPE6n20XwL76 6pZ8gNuJMR08Ein3PJJ2OgJWXg1sQoheAF+Jb03BebPfhWPeX7ce7zWqxZh+AhNLeREF 1tsOshXYg6zo4jRNutt7+QpfU8+0opegJeKqq/x2yrO0rIUv+3EIXmLnQej9bNo3RovD EgopX4TcTVUrItM1C2HJDcjvtry/06R2r1PG2+JedzLot4EoJSyJZaeDS3lJOcO69ljZ 5mgDsZb/4WkeoF2QuuSMmFC2Ja/wW6MK9/zSk8pL329mBag5lr7m1++FTEq2B41OhBY5 LXYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:in-reply-to:references; bh=fM2UTq+5eeNazzQ29QtHZ+7bDIlOYwjHlxlhJVxqbWw=; b=szM8k1ThYa54WbWimVpoQkVEg2s+sMtfifov9UqrHsMp58XYrUKA7YbhsE8u0Ftqpw V+csNqE0MOCi7wnVkWsh9oqsAF2yQsZtnXKNCOyRAtzRJ0+06ChOldNC8rk8AAE6cZXu 9/LbTH8pFI2cvkbRiHZ0mwG7yKTl3U5zACa/5ypUfUuq1AiE/Q/9i4jO4NMIu5mEIhbG wUcDvfbTLdlupvhmtWPLYswhlslLOn6rQFlKq0d6iFDsMwqlrpyqIy22h6MtLHFZBMG6 pHzyp4LJDu5RQ50PnyrarMrdnaGBOOiy0wUmJGyRLyKrkBEqR1dJJlYgvbG8ONnJDx+5 /Uzw== X-Gm-Message-State: AOAM5327LT6FTd1CQxLWwyS0RPUvJ2v3JWh4PHmUqStOBFVibssh6IYC 0PRz8AVvK6wGhQJgxJsCRuJh4IWYN9BFJ5VM X-Google-Smtp-Source: ABdhPJxTPyZwd4zeM7nP+GM7kH4VCbcPNLX+d3lqjhS7EhCqEaZgd3ctkUHQeCsDfrK5SG08V1twKQ== X-Received: by 2002:a17:90a:de89:: with SMTP id n9mr118379pjv.50.1598599369495; Fri, 28 Aug 2020 00:22:49 -0700 (PDT) Received: from localhost ([43.224.245.180]) by smtp.gmail.com with ESMTPSA id a7sm500564pfa.14.2020.08.28.00.22.48 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 28 Aug 2020 00:22:48 -0700 (PDT) From: Geliang Tang To: mptcp@lists.01.org Date: Fri, 28 Aug 2020 15:16:02 +0800 Message-Id: <2e88ccea2ee01e9ad85cf7b507c1efac6c458905.1598598749.git.geliangtang@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: References: In-Reply-To: <4bf1636a362ac487d5bd2abae78e78b9f91294f1.1598598749.git.geliangtang@gmail.com> References: <4bf1636a362ac487d5bd2abae78e78b9f91294f1.1598598749.git.geliangtang@gmail.com> Message-ID-Hash: PUB7INELK7XDAKBI5XAR6GFUYNK4CZWY X-Message-ID-Hash: PUB7INELK7XDAKBI5XAR6GFUYNK4CZWY X-MailFrom: geliangtang@gmail.com X-Mailman-Rule-Hits: member-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address CC: Geliang Tang X-Mailman-Version: 3.1.1 Precedence: list Subject: [MPTCP] [MPTCP][PATCH v7 mptcp-next 2/4] mptcp: add ADD_ADDR related mibs List-Id: Discussions regarding MPTCP upstreaming Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 This patch added two mibs for ADD_ADDR, MPTCP_MIB_ADDADDR for receiving of the ADD_ADDR suboption with echo-flag=0, and MPTCP_MIB_ECHOADD for receiving the ADD_ADDR suboption with echo-flag=1. Signed-off-by: Geliang Tang --- net/mptcp/mib.c | 2 ++ net/mptcp/mib.h | 2 ++ net/mptcp/options.c | 7 ++++++- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/net/mptcp/mib.c b/net/mptcp/mib.c index 056986c7a228..a33bf719ce6f 100644 --- a/net/mptcp/mib.c +++ b/net/mptcp/mib.c @@ -27,6 +27,8 @@ static const struct snmp_mib mptcp_snmp_list[] = { SNMP_MIB_ITEM("OFOMerge", MPTCP_MIB_OFOMERGE), SNMP_MIB_ITEM("NoDSSInWindow", MPTCP_MIB_NODSSWINDOW), SNMP_MIB_ITEM("DuplicateData", MPTCP_MIB_DUPDATA), + SNMP_MIB_ITEM("AddAddr", MPTCP_MIB_ADDADDR), + SNMP_MIB_ITEM("EchoAdd", MPTCP_MIB_ECHOADD), SNMP_MIB_SENTINEL }; diff --git a/net/mptcp/mib.h b/net/mptcp/mib.h index 937a177729f1..cdeea3732ddf 100644 --- a/net/mptcp/mib.h +++ b/net/mptcp/mib.h @@ -20,6 +20,8 @@ enum linux_mptcp_mib_field { MPTCP_MIB_OFOMERGE, /* Segments merged in OoO queue */ MPTCP_MIB_NODSSWINDOW, /* Segments not in MPTCP windows */ MPTCP_MIB_DUPDATA, /* Segments discarded due to duplicate DSS */ + MPTCP_MIB_ADDADDR, /* Received ADD_ADDR with echo-flag=0 */ + MPTCP_MIB_ECHOADD, /* Received ADD_ADDR with echo-flag=1 */ __MPTCP_MIB_MAX }; diff --git a/net/mptcp/options.c b/net/mptcp/options.c index a41996e6c6d7..0d1ff621613c 100644 --- a/net/mptcp/options.c +++ b/net/mptcp/options.c @@ -11,6 +11,7 @@ #include #include #include "protocol.h" +#include "mib.h" static bool mptcp_cap_flag_sha256(u8 flags) { @@ -888,8 +889,12 @@ void mptcp_incoming_options(struct sock *sk, struct sk_buff *skb, addr.addr6 = mp_opt.addr6; } #endif - if (!mp_opt.echo) + if (!mp_opt.echo) { mptcp_pm_add_addr_received(msk, &addr); + __MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_ADDADDR); + } else { + __MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_ECHOADD); + } mp_opt.add_addr = 0; }