From patchwork Fri Mar 16 17:51:07 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yousuk Seung X-Patchwork-Id: 887065 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=google.com header.i=@google.com header.b="uVnXOP8k"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 402tLD1vpbz9sNq for ; Sat, 17 Mar 2018 04:51:16 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752031AbeCPRvN (ORCPT ); Fri, 16 Mar 2018 13:51:13 -0400 Received: from mail-pl0-f66.google.com ([209.85.160.66]:45275 "EHLO mail-pl0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751454AbeCPRvM (ORCPT ); Fri, 16 Mar 2018 13:51:12 -0400 Received: by mail-pl0-f66.google.com with SMTP id v9-v6so6345843plp.12 for ; Fri, 16 Mar 2018 10:51:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=xa6e2UXiSoKdW8V7uRV+Zwnd0kz6tPxs7Fm7TbWnGq0=; b=uVnXOP8ki/rpsK216XeDHxTTaPHs05lAEhVNy7f1vZqUntLmHLW79bTZplbPuQbnv4 HyTfE6gV5kB80yB1xXKyaIb5KRIS0T7SFEvXzRP7Bg6+/7pdTuhNI4GpgPjFC1UHVQoU XzMIKW5Hf0XsJtxlXCEsE/i/iBkuBr3yhko5MjMhU9e4zKAR/Vbo1U4/3cuvH99GdeP3 2ZH4a8Ej09774D0WjyK7WbmosFLZoPuRPhl9NSi7r7ds40bQW2AweGwLf9sH38YVShck r+hJBCdTZ3LapJxgHW41jwRqtW1rjFzIRsy5Ys6zcWhFb+gnfEuZi4iAf6tFhy4htfYr Kz1Q== 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; bh=xa6e2UXiSoKdW8V7uRV+Zwnd0kz6tPxs7Fm7TbWnGq0=; b=N0nRq+6Z7mdCTRmthVBHyrzlcGPGHK59e9k3LC4LX0LWZ8xcgouja55ZP7XIYuo6eq 2U7L7QbYmjI4MYHJB2xCiMov4GCz+gsQLnaJMhvtMo696L2ud6Sk7iC6NSVT2csruCZz HU5fuG8eO0KiNAs1j/vwFVBNLxwpsTqK7C25DCNMIjNiiqERGd8n+LpoRBTq91VMUVp6 D3hG7GKLjvb2v3dFQ9cAFHvy5yQj5BG1Ex96AqI/Ddp8pCFiMOcAnHWFBYujcn6LtVQi zpPGDXRaCEdAzoXWSPHgCgZWDoSXIL3sIDD8AymVNXTfrSPpMuOLNWtqgS7NigL9DqLt RQag== X-Gm-Message-State: AElRT7FcEFaR7z4nAi8sNCrg51/dXpnbnHNsqA7lZse0GRYnv06gdzXB eS+sZry2igeaFMWtErTUJsdaTTCzZGs= X-Google-Smtp-Source: AG47ELvSV/RacmtWHRTFqbx/stylWwPcQetVvw8BcAts/lEN5GI/2WTRX5ucrSfaHULgw5c2WHRC4w== X-Received: by 2002:a17:902:8287:: with SMTP id y7-v6mr3045446pln.85.1521222671402; Fri, 16 Mar 2018 10:51:11 -0700 (PDT) Received: from ysseung.svl.corp.google.com ([2620:15c:2c4:201:47c8:2bc4:30f4:c8]) by smtp.gmail.com with ESMTPSA id g77sm17757576pfk.135.2018.03.16.10.51.10 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 16 Mar 2018 10:51:10 -0700 (PDT) From: Yousuk Seung To: David Miller Cc: netdev@vger.kernel.org, Yousuk Seung , Neal Cardwell , Priyaranjan Jha , Soheil Hassas Yeganeh , Yuchung Cheng Subject: [PATCH net-next 1/2] tcp: add snd_ssthresh stat in SCM_TIMESTAMPING_OPT_STATS Date: Fri, 16 Mar 2018 10:51:07 -0700 Message-Id: <20180316175107.224147-1-ysseung@google.com> X-Mailer: git-send-email 2.16.2.804.g6dcf76e118-goog Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This patch adds TCP_NLA_SND_SSTHRESH stat into SCM_TIMESTAMPING_OPT_STATS that reports tcp_sock.snd_ssthresh. Signed-off-by: Yousuk Seung Signed-off-by: Neal Cardwell Signed-off-by: Priyaranjan Jha Signed-off-by: Soheil Hassas Yeganeh Signed-off-by: Yuchung Cheng Reviewed-by: Eric Dumazet --- include/uapi/linux/tcp.h | 1 + net/ipv4/tcp.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/include/uapi/linux/tcp.h b/include/uapi/linux/tcp.h index 4c0ae0faf7ca..560374c978f9 100644 --- a/include/uapi/linux/tcp.h +++ b/include/uapi/linux/tcp.h @@ -243,6 +243,7 @@ enum { TCP_NLA_DELIVERY_RATE_APP_LMT, /* delivery rate application limited ? */ TCP_NLA_SNDQ_SIZE, /* Data (bytes) pending in send queue */ TCP_NLA_CA_STATE, /* ca_state of socket */ + TCP_NLA_SND_SSTHRESH, /* Slow start size threshold */ }; diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index fb350f740f69..e553f84bde83 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c @@ -3031,7 +3031,7 @@ struct sk_buff *tcp_get_timestamping_opt_stats(const struct sock *sk) u32 rate; stats = alloc_skb(7 * nla_total_size_64bit(sizeof(u64)) + - 4 * nla_total_size(sizeof(u32)) + + 5 * nla_total_size(sizeof(u32)) + 3 * nla_total_size(sizeof(u8)), GFP_ATOMIC); if (!stats) return NULL; @@ -3061,6 +3061,7 @@ struct sk_buff *tcp_get_timestamping_opt_stats(const struct sock *sk) nla_put_u8(stats, TCP_NLA_RECUR_RETRANS, inet_csk(sk)->icsk_retransmits); nla_put_u8(stats, TCP_NLA_DELIVERY_RATE_APP_LMT, !!tp->rate_app_limited); + nla_put_u32(stats, TCP_NLA_SND_SSTHRESH, tp->snd_ssthresh); nla_put_u32(stats, TCP_NLA_SNDQ_SIZE, tp->write_seq - tp->snd_una); nla_put_u8(stats, TCP_NLA_CA_STATE, inet_csk(sk)->icsk_ca_state);