From 36ac1139f0864e892b6437b5dd249a471219b1a7 Mon Sep 17 00:00:00 2001 From: Michael Jeanson Date: Tue, 21 May 2019 16:33:11 -0400 Subject: [PATCH] fix: mm/vmscan: drop may_writepage and classzone_idx from direct reclaim begin template (v5.2) See upstream commit: commit 3481c37ffa1de58ef140d0fe9eabf56305e74666 Author: Yafang Shao Date: Mon May 13 17:19:14 2019 -0700 mm/vmscan: drop may_writepage and classzone_idx from direct reclaim begin template There are three tracepoints using this template, which are mm_vmscan_direct_reclaim_begin, mm_vmscan_memcg_reclaim_begin, mm_vmscan_memcg_softlimit_reclaim_begin. Regarding mm_vmscan_direct_reclaim_begin, sc.may_writepage is !laptop_mode, that's a static setting, and reclaim_idx is derived from gfp_mask which is already show in this tracepoint. Regarding mm_vmscan_memcg_reclaim_begin, may_writepage is !laptop_mode too, and reclaim_idx is (MAX_NR_ZONES-1), which are both static value. mm_vmscan_memcg_softlimit_reclaim_begin is the same with mm_vmscan_memcg_reclaim_begin. So we can drop them all. Signed-off-by: Michael Jeanson Signed-off-by: Mathieu Desnoyers --- .../events/lttng-module/mm_vmscan.h | 37 ++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/instrumentation/events/lttng-module/mm_vmscan.h b/instrumentation/events/lttng-module/mm_vmscan.h index cc7a2759..db4a9068 100644 --- a/instrumentation/events/lttng-module/mm_vmscan.h +++ b/instrumentation/events/lttng-module/mm_vmscan.h @@ -114,7 +114,42 @@ LTTNG_TRACEPOINT_EVENT(mm_vmscan_wakeup_kswapd, ) #endif -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0)) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,2,0)) + +LTTNG_TRACEPOINT_EVENT_CLASS(mm_vmscan_direct_reclaim_begin_template, + + TP_PROTO(int order, gfp_t gfp_flags), + + TP_ARGS(order, gfp_flags), + + TP_FIELDS( + ctf_integer(int, order, order) + ctf_integer(gfp_t, gfp_flags, gfp_flags) + ) +) + +LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_direct_reclaim_begin_template, mm_vmscan_direct_reclaim_begin, + + TP_PROTO(int order, gfp_t gfp_flags), + + TP_ARGS(order, gfp_flags) +) + +LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_direct_reclaim_begin_template, mm_vmscan_memcg_reclaim_begin, + + TP_PROTO(int order, gfp_t gfp_flags), + + TP_ARGS(order, gfp_flags) +) + +LTTNG_TRACEPOINT_EVENT_INSTANCE(mm_vmscan_direct_reclaim_begin_template, mm_vmscan_memcg_softlimit_reclaim_begin, + + TP_PROTO(int order, gfp_t gfp_flags), + + TP_ARGS(order, gfp_flags) +) + +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0)) LTTNG_TRACEPOINT_EVENT_CLASS(mm_vmscan_direct_reclaim_begin_template, -- 2.34.1