blob: a1b979c95a8d4d7c6a3b24a63c7f38a125f9f6b6 [file] [log] [blame]
Patrick Williamsda295312023-12-05 16:48:56 -06001From aee34d916bdae79abcf103ef098cbb2e0c20bf83 Mon Sep 17 00:00:00 2001
2From: Kienan Stewart <kstewart@efficios.com>
3Date: Mon, 20 Nov 2023 11:33:14 -0500
4Subject: [PATCH 2/2] fix: mm, vmscan signatures changed in linux 6.7.0-rc1
5
6See upstream commit:
7
8 commit 3dfbb555c98ac55b9d911f9af0e35014b445fb41
9 Author: Vlastimil Babka <vbabka@suse.cz>
10 Date: Thu Sep 14 15:16:39 2023 +0200
11
12 mm, vmscan: remove ISOLATE_UNMAPPED
13
14 This isolate_mode_t flag is effectively unused since 89f6c88a6ab4 ("mm:
15 __isolate_lru_page_prepare() in isolate_migratepages_block()") as
16 sc->may_unmap is now checked directly (and only node_reclaim has a mode
17 that sets it to 0). The last remaining place is mm_vmscan_lru_isolate
18 tracepoint for the isolate_mode parameter. That one was mainly used to
19 indicate the active/inactive mode, which the trace-vmscan-postprocess.pl
20 script consumed, but that got silently broken. After fixing the script by
21 the previous patch, it does not need the isolate_mode anymore. So just
22 remove the parameter and with that the whole ISOLATE_UNMAPPED flag.
23
24Upstream-Status: Backport [commit aee34d91]
25
26Signed-off-by: Kienan Stewart <kstewart@efficios.com>
27Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
28Change-Id: Ie7346886d926a1a9d20bcb1570c587c5e943a1c3
29---
30 include/instrumentation/events/mm_vmscan.h | 28 +++++++++++++++++++++-
31 1 file changed, 27 insertions(+), 1 deletion(-)
32
33Index: lttng-modules-2.13.10/include/instrumentation/events/mm_vmscan.h
34===================================================================
35--- lttng-modules-2.13.10.orig/include/instrumentation/events/mm_vmscan.h
36+++ lttng-modules-2.13.10/include/instrumentation/events/mm_vmscan.h
37@@ -369,7 +369,33 @@ LTTNG_TRACEPOINT_EVENT_MAP(mm_shrink_sla
38 )
39 #endif
40
41-#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,11,0))
42+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,7,0))
43+LTTNG_TRACEPOINT_EVENT(mm_vmscan_lru_isolate,
44+
45+ TP_PROTO(int classzone_idx,
46+ int order,
47+ unsigned long nr_requested,
48+ unsigned long nr_scanned,
49+ unsigned long nr_skipped,
50+ unsigned long nr_taken,
51+ int lru
52+ ),
53+
54+ TP_ARGS(classzone_idx, order, nr_requested, nr_scanned, nr_skipped,
55+ nr_taken, lru
56+ ),
57+
58+ TP_FIELDS(
59+ ctf_integer(int, classzone_idx, classzone_idx)
60+ ctf_integer(int, order, order)
61+ ctf_integer(unsigned long, nr_requested, nr_requested)
62+ ctf_integer(unsigned long, nr_scanned, nr_scanned)
63+ ctf_integer(unsigned long, nr_skipped, nr_skipped)
64+ ctf_integer(unsigned long, nr_taken, nr_taken)
65+ ctf_integer(int, lru, lru)
66+ )
67+)
68+#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,11,0))
69 LTTNG_TRACEPOINT_EVENT(mm_vmscan_lru_isolate,
70
71 TP_PROTO(int classzone_idx,