From: Jan Rękorajski Date: Sat, 27 Oct 2018 12:31:29 +0000 (+0200) Subject: - fix building with kernel 4.19 X-Git-Tag: auto/th/lttng-modules-2.10.7-2 X-Git-Url: http://git.pld-linux.org/?p=packages%2Flttng-modules.git;a=commitdiff_plain;h=cf47fa9 - fix building with kernel 4.19 --- diff --git a/kernel-4.19.patch b/kernel-4.19.patch new file mode 100644 index 0000000..10230e4 --- /dev/null +++ b/kernel-4.19.patch @@ -0,0 +1,62 @@ +From 53f9bf806271d7bd38595dfc2eddbeb668eb842e Mon Sep 17 00:00:00 2001 +From: Michael Jeanson +Date: Fri, 7 Sep 2018 12:21:12 -0400 +Subject: [PATCH] Fix: net: expose sk wmem in sock_exceed_buf_limit tracepoint + (4.19) + +See upstream commit: + + commit d6f19938eb031ee2158272757db33258153ae59c + Author: Yafang Shao + Date: Sun Jul 1 23:31:30 2018 +0800 + + net: expose sk wmem in sock_exceed_buf_limit tracepoint + + Currently trace_sock_exceed_buf_limit() only show rmem info, + but wmem limit may also be hit. + So expose wmem info in this tracepoint as well. + + Regarding memcg, I think it is better to introduce a new tracepoint(if + that is needed), i.e. trace_memcg_limit_hit other than show memcg info in + trace_sock_exceed_buf_limit. + +Signed-off-by: Michael Jeanson +Signed-off-by: Mathieu Desnoyers +--- + instrumentation/events/lttng-module/sock.h | 23 +++++++++++++++++++++- + 1 file changed, 22 insertions(+), 1 deletion(-) + +diff --git a/instrumentation/events/lttng-module/sock.h b/instrumentation/events/lttng-module/sock.h +index 4bde039..a1032b3 100644 +--- a/instrumentation/events/lttng-module/sock.h ++++ b/instrumentation/events/lttng-module/sock.h +@@ -22,7 +22,28 @@ LTTNG_TRACEPOINT_EVENT(sock_rcvqueue_full, + ) + ) + +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,19,0)) ++ ++LTTNG_TRACEPOINT_EVENT(sock_exceed_buf_limit, ++ ++ TP_PROTO(struct sock *sk, struct proto *prot, long allocated, int kind), ++ ++ TP_ARGS(sk, prot, allocated, kind), ++ ++ TP_FIELDS( ++ ctf_string(name, prot->name) ++ ctf_array(long, sysctl_mem, prot->sysctl_mem, 3) ++ ctf_integer(long, allocated, allocated) ++ ctf_integer(int, sysctl_rmem, sk_get_rmem0(sk, prot)) ++ ctf_integer(int, rmem_alloc, atomic_read(&sk->sk_rmem_alloc)) ++ ctf_integer(int, sysctl_wmem, sk_get_wmem0(sk, prot)) ++ ctf_integer(int, wmem_alloc, refcount_read(&sk->sk_wmem_alloc)) ++ ctf_integer(int, wmem_queued, sk->sk_wmem_queued) ++ ctf_integer(int, kind, kind) ++ ) ++) ++ ++#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0)) + + LTTNG_TRACEPOINT_EVENT(sock_exceed_buf_limit, + diff --git a/lttng-modules.spec b/lttng-modules.spec index 59e15dd..375e2ec 100644 --- a/lttng-modules.spec +++ b/lttng-modules.spec @@ -7,7 +7,7 @@ # nothing to be placed to debuginfo package %define _enable_debug_packages 0 -%define rel 1 +%define rel 2 %define pname lttng-modules Summary: LTTng 2.x kernel modules Summary(pl.UTF-8): Moduły jądra LTTng 2.x @@ -19,6 +19,7 @@ Group: Base/Kernel Source0: http://lttng.org/files/lttng-modules/%{pname}-%{version}.tar.bz2 # Source0-md5: d3cb4520948083bf1573a2e4cb7406aa Patch0: build.patch +Patch1: kernel-4.19.patch URL: http://lttng.org/ %{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.38} %{?with_kernelsrc:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-source >= 3:2.6.38}} @@ -88,6 +89,7 @@ p=`pwd`\ %prep %setup -q -n %{pname}-%{version} %patch0 -p1 +%patch1 -p1 %build %{expand:%build_kernel_packages}