1 From 53f9bf806271d7bd38595dfc2eddbeb668eb842e Mon Sep 17 00:00:00 2001
2 From: Michael Jeanson <mjeanson@efficios.com>
3 Date: Fri, 7 Sep 2018 12:21:12 -0400
4 Subject: [PATCH] Fix: net: expose sk wmem in sock_exceed_buf_limit tracepoint
9 commit d6f19938eb031ee2158272757db33258153ae59c
10 Author: Yafang Shao <laoar.shao@gmail.com>
11 Date: Sun Jul 1 23:31:30 2018 +0800
13 net: expose sk wmem in sock_exceed_buf_limit tracepoint
15 Currently trace_sock_exceed_buf_limit() only show rmem info,
16 but wmem limit may also be hit.
17 So expose wmem info in this tracepoint as well.
19 Regarding memcg, I think it is better to introduce a new tracepoint(if
20 that is needed), i.e. trace_memcg_limit_hit other than show memcg info in
21 trace_sock_exceed_buf_limit.
23 Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
24 Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
26 instrumentation/events/lttng-module/sock.h | 23 +++++++++++++++++++++-
27 1 file changed, 22 insertions(+), 1 deletion(-)
29 diff --git a/instrumentation/events/lttng-module/sock.h b/instrumentation/events/lttng-module/sock.h
30 index 4bde039..a1032b3 100644
31 --- a/instrumentation/events/lttng-module/sock.h
32 +++ b/instrumentation/events/lttng-module/sock.h
33 @@ -22,7 +22,28 @@ LTTNG_TRACEPOINT_EVENT(sock_rcvqueue_full,
37 -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0))
38 +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,19,0))
40 +LTTNG_TRACEPOINT_EVENT(sock_exceed_buf_limit,
42 + TP_PROTO(struct sock *sk, struct proto *prot, long allocated, int kind),
44 + TP_ARGS(sk, prot, allocated, kind),
47 + ctf_string(name, prot->name)
48 + ctf_array(long, sysctl_mem, prot->sysctl_mem, 3)
49 + ctf_integer(long, allocated, allocated)
50 + ctf_integer(int, sysctl_rmem, sk_get_rmem0(sk, prot))
51 + ctf_integer(int, rmem_alloc, atomic_read(&sk->sk_rmem_alloc))
52 + ctf_integer(int, sysctl_wmem, sk_get_wmem0(sk, prot))
53 + ctf_integer(int, wmem_alloc, refcount_read(&sk->sk_wmem_alloc))
54 + ctf_integer(int, wmem_queued, sk->sk_wmem_queued)
55 + ctf_integer(int, kind, kind)
59 +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0))
61 LTTNG_TRACEPOINT_EVENT(sock_exceed_buf_limit,