summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@gmail.com>2023-11-24 14:30:49 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2023-12-01 11:48:25 +0000
commit3f96cab3c4c561464d074af639eb61c9fb3c8c60 (patch)
tree300627db11d1541145e7c02b81054a4642dab70c
parenta1a87182d13d8f1de46793d37f29c32f0b817c00 (diff)
downloadpoky-3f96cab3c4c561464d074af639eb61c9fb3c8c60.tar.gz
lttng-modules: fix build for v6.7+
While working on the update to linux-yocto-dev lttng-modules needed some tweaks (as usual). With these three patches (submitted to lttng-dev), we can once again build core-image-kernel-dev for v6.7+ (From OE-Core rev: b8b7b4d9274bde36f43c43207c463730f22e1f5f) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0001-fix-phys_proc_id-and-cpu_core_id-moved-in-linux-6.7..patch79
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch10
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0001-wrapper-fdtable-adjust-fd-lookup-to-v6.7.patch35
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0002-fix-mm-vmscan-signatures-changed-in-linux-6.7.0-rc1.patch71
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules_2.13.10.bb3
5 files changed, 193 insertions, 5 deletions
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0001-fix-phys_proc_id-and-cpu_core_id-moved-in-linux-6.7..patch b/meta/recipes-kernel/lttng/lttng-modules/0001-fix-phys_proc_id-and-cpu_core_id-moved-in-linux-6.7..patch
new file mode 100644
index 0000000000..598f5a7efa
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0001-fix-phys_proc_id-and-cpu_core_id-moved-in-linux-6.7..patch
@@ -0,0 +1,79 @@
1From 4f32efe70b618c4721bf197692fc9d709d352528 Mon Sep 17 00:00:00 2001
2From: Kienan Stewart <kstewart@efficios.com>
3Date: Mon, 20 Nov 2023 11:27:12 -0500
4Subject: [PATCH 1/2] fix: phys_proc_id and cpu_core_id moved in linux
5 6.7.0-rc1
6
7See upstream commit:
8
9 commit 02fb601d27a7abf60d52b21bdf5b100a8d63da3f
10 Author: Thomas Gleixner <tglx@linutronix.de>
11 Date: Mon Aug 14 10:18:30 2023 +0200
12
13 x86/cpu: Move phys_proc_id into topology info
14
15 Rename it to pkg_id which is the terminology used in the kernel.
16
17 No functional change.
18
19See upstream commit:
20
21 commit e95256335d45cc965cd12c423535002974313340
22 Author: Thomas Gleixner <tglx@linutronix.de>
23 Date: Mon Aug 14 10:18:34 2023 +0200
24
25 x86/cpu: Move cpu_core_id into topology info
26
27 Rename it to core_id and stick it to the other ID fields.
28
29 No functional change.
30
31Upstream-Status: Backport [commit 4f32efe7]
32
33Signed-off-by: Kienan Stewart <kstewart@efficios.com>
34Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
35Change-Id: I574b02430210d5bb72c4b9db901d0e3a6dc7bea0
36---
37 .../instrumentation/events/lttng-statedump.h | 19 +++++++++++++++++++
38 1 file changed, 19 insertions(+)
39
40diff --git a/include/instrumentation/events/lttng-statedump.h b/include/instrumentation/events/lttng-statedump.h
41index 642aa356..4831a941 100644
42--- a/include/instrumentation/events/lttng-statedump.h
43+++ b/include/instrumentation/events/lttng-statedump.h
44@@ -253,6 +253,23 @@ LTTNG_TRACEPOINT_EVENT(lttng_statedump_interrupt,
45
46 #define LTTNG_HAVE_STATEDUMP_CPU_TOPOLOGY
47
48+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,7,0))
49+LTTNG_TRACEPOINT_EVENT(lttng_statedump_cpu_topology,
50+ TP_PROTO(struct lttng_kernel_session *session, struct cpuinfo_x86 *c),
51+ TP_ARGS(session, c),
52+ TP_FIELDS(
53+ ctf_string(architecture, "x86")
54+ ctf_integer(uint16_t, cpu_id, c->cpu_index)
55+ ctf_string(vendor, c->x86_vendor_id[0] ? c->x86_vendor_id : "unknown")
56+ ctf_integer(uint8_t, family, c->x86)
57+ ctf_integer(uint8_t, model, c->x86_model)
58+ ctf_string(model_name, c->x86_model_id[0] ? c->x86_model_id : "unknown")
59+ ctf_integer(uint16_t, physical_id, c->topo.pkg_id)
60+ ctf_integer(uint16_t, core_id, c->topo.core_id)
61+ ctf_integer(uint16_t, cores, c->booted_cores)
62+ )
63+)
64+#else
65 LTTNG_TRACEPOINT_EVENT(lttng_statedump_cpu_topology,
66 TP_PROTO(struct lttng_kernel_session *session, struct cpuinfo_x86 *c),
67 TP_ARGS(session, c),
68@@ -268,6 +285,8 @@ LTTNG_TRACEPOINT_EVENT(lttng_statedump_cpu_topology,
69 ctf_integer(uint16_t, cores, c->booted_cores)
70 )
71 )
72+#endif /* LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,7,0) */
73+
74 #endif /* CONFIG_X86_32 || CONFIG_X86_64 */
75
76 #endif /* LTTNG_TRACE_LTTNG_STATEDUMP_H */
77--
782.34.1
79
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch b/meta/recipes-kernel/lttng/lttng-modules/0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch
index 76a5787c37..120528bf9c 100644
--- a/meta/recipes-kernel/lttng/lttng-modules/0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch
+++ b/meta/recipes-kernel/lttng/lttng-modules/0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch
@@ -19,10 +19,10 @@ Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
19 src/Kbuild | 7 ++++++- 19 src/Kbuild | 7 ++++++-
20 1 file changed, 6 insertions(+), 1 deletion(-) 20 1 file changed, 6 insertions(+), 1 deletion(-)
21 21
22diff --git a/src/Kbuild b/src/Kbuild 22Index: lttng-modules-2.13.10/src/Kbuild
23index 7137874..04eb5c9 100644 23===================================================================
24--- a/src/Kbuild 24--- lttng-modules-2.13.10.orig/src/Kbuild
25+++ b/src/Kbuild 25+++ lttng-modules-2.13.10/src/Kbuild
26@@ -2,10 +2,13 @@ 26@@ -2,10 +2,13 @@
27 27
28 ifdef CONFIG_LOCALVERSION # Check if dot-config is included. 28 ifdef CONFIG_LOCALVERSION # Check if dot-config is included.
@@ -38,7 +38,7 @@ index 7137874..04eb5c9 100644
38 TOP_LTTNG_MODULES_DIR := $(shell dirname $(lastword $(MAKEFILE_LIST)))/.. 38 TOP_LTTNG_MODULES_DIR := $(shell dirname $(lastword $(MAKEFILE_LIST)))/..
39 39
40 lttng_check_linux_version = $(shell pwd)/include/linux/version.h 40 lttng_check_linux_version = $(shell pwd)/include/linux/version.h
41@@ -150,3 +153,5 @@ lttng-statedump-objs := lttng-statedump-impl.o 41@@ -150,3 +153,5 @@ lttng-statedump-objs := lttng-statedump-
42 obj-$(CONFIG_LTTNG) += probes/ 42 obj-$(CONFIG_LTTNG) += probes/
43 obj-$(CONFIG_LTTNG) += lib/ 43 obj-$(CONFIG_LTTNG) += lib/
44 obj-$(CONFIG_LTTNG) += tests/ 44 obj-$(CONFIG_LTTNG) += tests/
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0001-wrapper-fdtable-adjust-fd-lookup-to-v6.7.patch b/meta/recipes-kernel/lttng/lttng-modules/0001-wrapper-fdtable-adjust-fd-lookup-to-v6.7.patch
new file mode 100644
index 0000000000..b374483517
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0001-wrapper-fdtable-adjust-fd-lookup-to-v6.7.patch
@@ -0,0 +1,35 @@
1From 76e4ea0c33a8c7726c0df28083d5c8bc1c1335e8 Mon Sep 17 00:00:00 2001
2From: Bruce Ashfield <bruce.ashfield@gmail.com>
3Date: Thu, 23 Nov 2023 13:49:51 -0500
4Subject: [PATCH] wrapper/fdtable: adjust fd lookup to v6.7+
5
6commit 0ede61d8589cc2d93 [file: convert to SLAB_TYPESAFE_BY_RCU]
7renames lookup_fd_rcu to lookup_fdget_rcu, so we need to
8version adjust the fdtable wrapper accordingly.
9
10Upstream-Status: Submitted [https://lists.lttng.org/pipermail/lttng-dev/2023-November/030667.html]
11
12Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
13---
14 include/wrapper/fdtable.h | 4 ++++
15 1 file changed, 4 insertions(+)
16
17diff --git a/include/wrapper/fdtable.h b/include/wrapper/fdtable.h
18index fa5f7207..aaf2b9e7 100644
19--- a/include/wrapper/fdtable.h
20+++ b/include/wrapper/fdtable.h
21@@ -16,7 +16,11 @@
22 static inline
23 struct file *lttng_lookup_fd_rcu(unsigned int fd)
24 {
25+#if (LTTNG_LINUX_VERSION_CODE < LTTNG_KERNEL_VERSION(6,7,0))
26 return lookup_fd_rcu(fd);
27+#else
28+ return lookup_fdget_rcu(fd);
29+#endif
30 }
31 #else
32 static inline
33--
342.34.1
35
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0002-fix-mm-vmscan-signatures-changed-in-linux-6.7.0-rc1.patch b/meta/recipes-kernel/lttng/lttng-modules/0002-fix-mm-vmscan-signatures-changed-in-linux-6.7.0-rc1.patch
new file mode 100644
index 0000000000..a1b979c95a
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0002-fix-mm-vmscan-signatures-changed-in-linux-6.7.0-rc1.patch
@@ -0,0 +1,71 @@
1From 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,
diff --git a/meta/recipes-kernel/lttng/lttng-modules_2.13.10.bb b/meta/recipes-kernel/lttng/lttng-modules_2.13.10.bb
index 4c0e37ebc7..a7e3096c6a 100644
--- a/meta/recipes-kernel/lttng/lttng-modules_2.13.10.bb
+++ b/meta/recipes-kernel/lttng/lttng-modules_2.13.10.bb
@@ -10,6 +10,9 @@ inherit module
10include lttng-platforms.inc 10include lttng-platforms.inc
11 11
12SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ 12SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \
13 file://0001-fix-phys_proc_id-and-cpu_core_id-moved-in-linux-6.7..patch \
14 file://0002-fix-mm-vmscan-signatures-changed-in-linux-6.7.0-rc1.patch \
15 file://0001-wrapper-fdtable-adjust-fd-lookup-to-v6.7.patch \
13 " 16 "
14 17
15# Use :append here so that the patch is applied also when using devupstream 18# Use :append here so that the patch is applied also when using devupstream