linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Santosh Shilimkar <santosh.shilimkar@oracle.com>
To: netdev@vger.kernel.org, davem@davemloft.net
Cc: linux-kernel@vger.kernel.org,
	Santosh Shilimkar <santosh.shilimkar@oracle.com>
Subject: [net-next][PATCH 15/18] RDS: add stat for socket recv memory usage
Date: Sun,  4 Dec 2016 22:57:50 -0800	[thread overview]
Message-ID: <1480921073-9140-16-git-send-email-santosh.shilimkar@oracle.com> (raw)
In-Reply-To: <1480921073-9140-1-git-send-email-santosh.shilimkar@oracle.com>

From: Venkat Venkatsubra <venkat.x.venkatsubra@oracle.com>

Tracks the receive side memory added to scokets and removed from sockets.

Signed-off-by: Venkat Venkatsubra <venkat.x.venkatsubra@oracle.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
---
 net/rds/rds.h  | 3 +++
 net/rds/recv.c | 4 ++++
 2 files changed, 7 insertions(+)

diff --git a/net/rds/rds.h b/net/rds/rds.h
index 0bb8213..8ccd5a9 100644
--- a/net/rds/rds.h
+++ b/net/rds/rds.h
@@ -631,6 +631,9 @@ struct rds_statistics {
 	uint64_t	s_cong_update_received;
 	uint64_t	s_cong_send_error;
 	uint64_t	s_cong_send_blocked;
+	uint64_t	s_recv_bytes_added_to_socket;
+	uint64_t	s_recv_bytes_removed_from_socket;
+
 };
 
 /* af_rds.c */
diff --git a/net/rds/recv.c b/net/rds/recv.c
index 9d0666e..ba19eee 100644
--- a/net/rds/recv.c
+++ b/net/rds/recv.c
@@ -94,6 +94,10 @@ static void rds_recv_rcvbuf_delta(struct rds_sock *rs, struct sock *sk,
 		return;
 
 	rs->rs_rcv_bytes += delta;
+	if (delta > 0)
+		rds_stats_add(s_recv_bytes_added_to_socket, delta);
+	else
+		rds_stats_add(s_recv_bytes_removed_from_socket, -delta);
 	now_congested = rs->rs_rcv_bytes > rds_sk_rcvbuf(rs);
 
 	rdsdebug("rs %p (%pI4:%u) recv bytes %d buf %d "
-- 
1.9.1

  parent reply	other threads:[~2016-12-05  7:01 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-05  6:57 [net-next][PATCH 00/18] net: RDS updates Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 01/18] RDS: log the address on bind failure Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 02/18] RDS: mark few internal functions static to make sparse build happy Santosh Shilimkar
2016-12-05  9:45   ` Sergei Shtylyov
2016-12-06  1:17     ` Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 03/18] RDS: IB: include faddr in connection log Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 04/18] RDS: IB: make the transport retry count smallest Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 05/18] RDS: RDMA: fix the ib_map_mr_sg_zbva() argument Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 06/18] RDS: RDMA: start rdma listening after init Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 07/18] RDS: RDMA: return appropriate error on rdma map failures Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 08/18] RDS: IB: split the mr registration and invalidation path Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 09/18] RDS: RDMA: silence the use_once mr log flood Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 10/18] RDS: IB: track and log active side endpoint in connection Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 11/18] RDS: IB: add few useful cache stasts Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 12/18] RDS: IB: Add vector spreading for cqs Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 13/18] RDS: RDMA: Fix the composite message user notification Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 14/18] RDS: IB: fix panic due to handlers running post teardown Santosh Shilimkar
2016-12-05  6:57 ` Santosh Shilimkar [this message]
2016-12-05  6:57 ` [net-next][PATCH 16/18] RDS: make message size limit compliant with spec Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 17/18] RDS: add receive message trace used by application Santosh Shilimkar
2016-12-05  6:57 ` [net-next][PATCH 18/18] RDS: IB: add missing connection cache usage info Santosh Shilimkar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1480921073-9140-16-git-send-email-santosh.shilimkar@oracle.com \
    --to=santosh.shilimkar@oracle.com \
    --cc=davem@davemloft.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).