summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/lttng
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/lttng')
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0001-Fix-ASoC-snd_doc_dapm-on-linux-6.9-rc1.patch93
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0001-fix-btrfs-simplify-delayed-ref-tracepoints-v6.10.patch142
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0001-fix-close_on_exec-pass-files_struct-instead-of-fdtab.patch79
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch132
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0002-fix-btrfs-move-parent-and-ref_root-into-btrfs_delaye.patch58
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0003-Fix-mm_compaction_migratepages-changed-in-linux-6.9-.patch81
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0003-fix-net-udp-add-IP-port-data-to-the-tracepoint-udp-u.patch79
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules/0004-Fix-dev_base_lock-removed-in-linux-6.9-rc1.patch57
-rw-r--r--meta/recipes-kernel/lttng/lttng-modules_2.13.13.bb (renamed from meta/recipes-kernel/lttng/lttng-modules_2.13.12.bb)10
9 files changed, 363 insertions, 368 deletions
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-ASoC-snd_doc_dapm-on-linux-6.9-rc1.patch b/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-ASoC-snd_doc_dapm-on-linux-6.9-rc1.patch
deleted file mode 100644
index 9d5fd0de60..0000000000
--- a/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-ASoC-snd_doc_dapm-on-linux-6.9-rc1.patch
+++ /dev/null
@@ -1,93 +0,0 @@
1From fec007d9630e010062cf5699a08460f71f46b527 Mon Sep 17 00:00:00 2001
2From: Kienan Stewart <kstewart@efficios.com>
3Date: Mon, 25 Mar 2024 08:54:42 -0400
4Subject: [PATCH 1/4] Fix: ASoC snd_doc_dapm on linux 6.9-rc1
5
6See upstream commit:
7
8 commit 7df3eb4cdb6bbfa482f51548b9fd47c2723c68ba
9 Author: Luca Ceresoli <luca.ceresoli@bootlin.com>
10 Date: Wed Mar 6 10:30:01 2024 +0100
11
12 ASoC: trace: add event to snd_soc_dapm trace events
13
14 Add the event value to the snd_soc_dapm_start and snd_soc_dapm_done trace
15 events to make them more informative.
16
17 Trace before:
18
19 aplay-229 [000] 250.140309: snd_soc_dapm_start: card=vscn-2046
20 aplay-229 [000] 250.167531: snd_soc_dapm_done: card=vscn-2046
21 aplay-229 [000] 251.169588: snd_soc_dapm_start: card=vscn-2046
22 aplay-229 [000] 251.195245: snd_soc_dapm_done: card=vscn-2046
23
24 Trace after:
25
26 aplay-214 [000] 693.290612: snd_soc_dapm_start: card=vscn-2046 event=1
27 aplay-214 [000] 693.315508: snd_soc_dapm_done: card=vscn-2046 event=1
28 aplay-214 [000] 694.537349: snd_soc_dapm_start: card=vscn-2046 event=2
29 aplay-214 [000] 694.563241: snd_soc_dapm_done: card=vscn-2046 event=2
30
31Upstream-Status: Backport [88c4e0fe Fix: ASoC snd_doc_dapm on linux 6.9-rc1]
32
33Change-Id: If0d33544b8dd1dfb3d12ca9390892190fc0444b0
34Signed-off-by: Kienan Stewart <kstewart@efficios.com>
35Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
36---
37 include/instrumentation/events/asoc.h | 33 +++++++++++++++++++++++++++
38 1 file changed, 33 insertions(+)
39
40diff --git a/include/instrumentation/events/asoc.h b/include/instrumentation/events/asoc.h
41index 21d13a0f..5126d4c1 100644
42--- a/include/instrumentation/events/asoc.h
43+++ b/include/instrumentation/events/asoc.h
44@@ -51,6 +51,38 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_card, snd_soc_bias_level_done,
45
46 )
47
48+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0))
49+LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_basic,
50+
51+ TP_PROTO(struct snd_soc_card *card, int event),
52+
53+ TP_ARGS(card, event),
54+
55+ TP_FIELDS(
56+ ctf_string(name, card->name)
57+ ctf_integer(int, event, event)
58+ )
59+)
60+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_basic, snd_soc_dapm_start,
61+
62+ asoc_snd_soc_dapm_start,
63+
64+ TP_PROTO(struct snd_soc_card *card, int event),
65+
66+ TP_ARGS(card, event)
67+
68+)
69+
70+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_basic, snd_soc_dapm_done,
71+
72+ asoc_snd_soc_dapm_done,
73+
74+ TP_PROTO(struct snd_soc_card *card, int event),
75+
76+ TP_ARGS(card, event)
77+
78+)
79+#else
80 LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_basic,
81
82 TP_PROTO(struct snd_soc_card *card),
83@@ -81,6 +113,7 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_basic, snd_soc_dapm_done,
84 TP_ARGS(card)
85
86 )
87+#endif
88
89 LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_widget,
90
91--
922.39.2
93
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0001-fix-btrfs-simplify-delayed-ref-tracepoints-v6.10.patch b/meta/recipes-kernel/lttng/lttng-modules/0001-fix-btrfs-simplify-delayed-ref-tracepoints-v6.10.patch
new file mode 100644
index 0000000000..c1e11f2bfb
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0001-fix-btrfs-simplify-delayed-ref-tracepoints-v6.10.patch
@@ -0,0 +1,142 @@
1From db0f940136afd43ce5fcf87c4d4e9ca558db1d4f Mon Sep 17 00:00:00 2001
2From: Michael Jeanson <mjeanson@efficios.com>
3Date: Mon, 27 May 2024 13:04:42 -0400
4Subject: [PATCH 1/3] fix: btrfs: simplify delayed ref tracepoints (v6.10)
5
6See upstream commit:
7
8 commit 1bff6d4f873790cfc675afce9860208576508c5a
9 Author: Josef Bacik <josef@toxicpanda.com>
10 Date: Fri Apr 12 20:27:00 2024 -0400
11
12 btrfs: simplify delayed ref tracepoints
13
14 Now that all of the delayed ref information is in the delayed ref node,
15 drastically simplify the delayed ref tracepoints by simply passing in
16 the btrfs_delayed_ref_node and populating the tracepoints with the
17 values from the structure itself.
18
19Upstream-Status: Backport [commit db0f9401 fix: btrfs: simplify delayed ref tracepoints (v6.10)]
20
21Change-Id: Ic90bc23d6aa558baec33adc33b4d21e052e83375
22Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
23Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
24---
25 include/instrumentation/events/btrfs.h | 94 +++++++++++++++++++++++++-
26 1 file changed, 92 insertions(+), 2 deletions(-)
27
28diff --git a/include/instrumentation/events/btrfs.h b/include/instrumentation/events/btrfs.h
29index ffb1b646..d73c1ce5 100644
30--- a/include/instrumentation/events/btrfs.h
31+++ b/include/instrumentation/events/btrfs.h
32@@ -899,7 +899,51 @@ LTTNG_TRACEPOINT_EVENT(btrfs_add_block_group,
33 )
34 #endif
35
36-#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,14,0) || \
37+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,10,0))
38+LTTNG_TRACEPOINT_EVENT_CLASS(btrfs_delayed_tree_ref,
39+
40+ TP_PROTO(const struct btrfs_fs_info *fs_info,
41+ const struct btrfs_delayed_ref_node *ref),
42+
43+ TP_ARGS(fs_info, ref),
44+
45+ TP_FIELDS(
46+ ctf_array(u8, fsid, lttng_fs_info_fsid, BTRFS_UUID_SIZE)
47+ ctf_integer(u64, bytenr, ref->bytenr)
48+ ctf_integer(u64, num_bytes, ref->num_bytes)
49+ ctf_integer(int, action, ref->action)
50+ ctf_integer(u64, parent, ref->tree_ref.parent)
51+ ctf_integer(u64, ref_root, ref->tree_ref.root)
52+ ctf_integer(int, level, ref->tree_ref.level)
53+ ctf_integer(int, type, ref->type)
54+ ctf_integer(u64, seq, ref->seq)
55+ )
56+)
57+
58+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_tree_ref,
59+
60+ add_delayed_tree_ref,
61+
62+ btrfs_add_delayed_tree_ref,
63+
64+ TP_PROTO(const struct btrfs_fs_info *fs_info,
65+ const struct btrfs_delayed_ref_node *ref),
66+
67+ TP_ARGS(fs_info, ref)
68+)
69+
70+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_tree_ref,
71+
72+ run_delayed_tree_ref,
73+
74+ btrfs_run_delayed_tree_ref,
75+
76+ TP_PROTO(const struct btrfs_fs_info *fs_info,
77+ const struct btrfs_delayed_ref_node *ref),
78+
79+ TP_ARGS(fs_info, ref)
80+)
81+#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,14,0) || \
82 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
83 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
84 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
85@@ -1139,7 +1183,53 @@ LTTNG_TRACEPOINT_EVENT(btrfs_delayed_tree_ref,
86 )
87 #endif
88
89-#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,14,0) || \
90+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,10,0))
91+LTTNG_TRACEPOINT_EVENT_CLASS(btrfs_delayed_data_ref,
92+
93+ TP_PROTO(const struct btrfs_fs_info *fs_info,
94+ const struct btrfs_delayed_ref_node *ref),
95+
96+ TP_ARGS(fs_info, ref),
97+
98+ TP_FIELDS(
99+ ctf_array(u8, fsid, lttng_fs_info_fsid, BTRFS_UUID_SIZE)
100+ ctf_integer(u64, bytenr, ref->bytenr)
101+ ctf_integer(u64, num_bytes, ref->num_bytes)
102+ ctf_integer(int, action, ref->action)
103+ ctf_integer(u64, parent, ref->data_ref.parent)
104+ ctf_integer(u64, ref_root, ref->data_ref.root)
105+ ctf_integer(u64, owner, ref->data_ref.objectid)
106+ ctf_integer(u64, offset, ref->data_ref.offset)
107+ ctf_integer(int, type, ref->type)
108+ ctf_integer(u64, seq, ref->seq)
109+ )
110+)
111+
112+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_data_ref,
113+
114+ add_delayed_data_ref,
115+
116+ btrfs_add_delayed_data_ref,
117+
118+ TP_PROTO(const struct btrfs_fs_info *fs_info,
119+ const struct btrfs_delayed_ref_node *ref),
120+
121+ TP_ARGS(fs_info, ref)
122+)
123+
124+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(btrfs_delayed_data_ref,
125+
126+ run_delayed_data_ref,
127+
128+ btrfs_run_delayed_data_ref,
129+
130+ TP_PROTO(const struct btrfs_fs_info *fs_info,
131+ const struct btrfs_delayed_ref_node *ref),
132+
133+ TP_ARGS(fs_info, ref)
134+)
135+
136+#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,14,0) || \
137 LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \
138 LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \
139 LTTNG_SLE_KERNEL_RANGE(4,4,92,6,0,0, 4,4,92,7,0,0) || \
140--
1412.39.2
142
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0001-fix-close_on_exec-pass-files_struct-instead-of-fdtab.patch b/meta/recipes-kernel/lttng/lttng-modules/0001-fix-close_on_exec-pass-files_struct-instead-of-fdtab.patch
new file mode 100644
index 0000000000..bb659d5563
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0001-fix-close_on_exec-pass-files_struct-instead-of-fdtab.patch
@@ -0,0 +1,79 @@
1From c8adc20d19d853527a29411a03e114efdeff5f59 Mon Sep 17 00:00:00 2001
2From: Michael Jeanson <mjeanson@efficios.com>
3Date: Mon, 27 May 2024 10:49:45 -0400
4Subject: [PATCH] fix: close_on_exec(): pass files_struct instead of fdtable
5 (v6.10)
6
7See upstream commit:
8
9 commit f60d374d2cc88034385265d193a38e3f4a4b430c
10 Author: Al Viro <viro@zeniv.linux.org.uk>
11 Date: Thu Jan 4 21:35:38 2024 -0500
12
13 close_on_exec(): pass files_struct instead of fdtable
14
15 both callers are happier that way...
16
17Upstream-Status: Backport [c8adc20d fix: close_on_exec(): pass files_struct instead of fdtable (v6.10)]
18
19Change-Id: I8cdabb073c2090842b27b74954d86cb486c43b3e
20Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
21Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
22---
23 include/wrapper/fdtable.h | 14 ++++++++++++++
24 src/lttng-statedump-impl.c | 3 +--
25 2 files changed, 15 insertions(+), 2 deletions(-)
26
27Index: lttng-modules-2.13.13/include/wrapper/fdtable.h
28===================================================================
29--- lttng-modules-2.13.13.orig/include/wrapper/fdtable.h
30+++ lttng-modules-2.13.13/include/wrapper/fdtable.h
31@@ -69,20 +69,18 @@ int lttng_iterate_fd(struct files_struct
32
33 #endif
34
35-#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,4,0))
36-
37-static inline bool lttng_close_on_exec(int fd, const struct fdtable *fdt)
38+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,10,0))
39+static inline
40+bool lttng_close_on_exec(unsigned int fd, const struct files_struct *files)
41 {
42- return close_on_exec(fd, fdt);
43+ return close_on_exec(fd, files);
44 }
45-
46 #else
47-
48-static inline bool lttng_close_on_exec(int fd, const struct fdtable *fdt)
49+static inline
50+bool lttng_close_on_exec(unsigned int fd, const struct files_struct *files)
51 {
52- return FD_ISSET(fd, fdt->close_on_exec);
53+ return close_on_exec(fd, files_fdtable(files));
54 }
55-
56 #endif
57
58 #endif /* _LTTNG_WRAPPER_FDTABLE_H */
59Index: lttng-modules-2.13.13/src/lttng-statedump-impl.c
60===================================================================
61--- lttng-modules-2.13.13.orig/src/lttng-statedump-impl.c
62+++ lttng-modules-2.13.13/src/lttng-statedump-impl.c
63@@ -44,7 +44,6 @@
64 #include <wrapper/tracepoint.h>
65 #include <wrapper/genhd.h>
66 #include <wrapper/file.h>
67-#include <wrapper/fdtable.h>
68 #include <wrapper/sched.h>
69
70 #ifdef CONFIG_LTTNG_HAS_LIST_IRQ
71@@ -451,7 +450,7 @@ int lttng_dump_one_fd(const void *p, str
72 * the lock is taken, but we are not aware whether this is
73 * guaranteed or not, so play safe.
74 */
75- if (fd < fdt->max_fds && lttng_close_on_exec(fd, fdt))
76+ if (fd < fdt->max_fds && lttng_close_on_exec(fd, ctx->files))
77 flags |= O_CLOEXEC;
78 if (IS_ERR(s)) {
79 struct dentry *dentry = file->f_path.dentry;
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch b/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch
deleted file mode 100644
index 6ea10ffc91..0000000000
--- a/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch
+++ /dev/null
@@ -1,132 +0,0 @@
1From d8379ec6365a925db33cae94fb6783cdbdb6a922 Mon Sep 17 00:00:00 2001
2From: Kienan Stewart <kstewart@efficios.com>
3Date: Mon, 25 Mar 2024 09:40:29 -0400
4Subject: [PATCH 2/4] Fix: ASoC add component to set_bias_level events in linux
5 6.9-rc1
6
7See upstream commit:
8
9 commit 6ef46a69ec32fe1cf56de67742fcd01af4bf48af
10 Author: Luca Ceresoli <luca.ceresoli@bootlin.com>
11 Date: Wed Mar 6 10:30:00 2024 +0100
12
13 ASoC: trace: add component to set_bias_level trace events
14
15 The snd_soc_bias_level_start and snd_soc_bias_level_done trace events
16 currently look like:
17
18 aplay-229 [000] 1250.140778: snd_soc_bias_level_start: card=vscn-2046 val=1
19 aplay-229 [000] 1250.140784: snd_soc_bias_level_done: card=vscn-2046 val=1
20 aplay-229 [000] 1250.140786: snd_soc_bias_level_start: card=vscn-2046 val=2
21 aplay-229 [000] 1250.140788: snd_soc_bias_level_done: card=vscn-2046 val=2
22 kworker/u8:1-21 [000] 1250.140871: snd_soc_bias_level_start: card=vscn-2046 val=1
23 kworker/u8:0-11 [000] 1250.140951: snd_soc_bias_level_start: card=vscn-2046 val=1
24 kworker/u8:0-11 [000] 1250.140956: snd_soc_bias_level_done: card=vscn-2046 val=1
25 kworker/u8:0-11 [000] 1250.140959: snd_soc_bias_level_start: card=vscn-2046 val=2
26 kworker/u8:0-11 [000] 1250.140961: snd_soc_bias_level_done: card=vscn-2046 val=2
27 kworker/u8:1-21 [000] 1250.167219: snd_soc_bias_level_done: card=vscn-2046 val=1
28 kworker/u8:1-21 [000] 1250.167222: snd_soc_bias_level_start: card=vscn-2046 val=2
29 kworker/u8:1-21 [000] 1250.167232: snd_soc_bias_level_done: card=vscn-2046 val=2
30 kworker/u8:0-11 [000] 1250.167440: snd_soc_bias_level_start: card=vscn-2046 val=3
31 kworker/u8:0-11 [000] 1250.167444: snd_soc_bias_level_done: card=vscn-2046 val=3
32 kworker/u8:1-21 [000] 1250.167497: snd_soc_bias_level_start: card=vscn-2046 val=3
33 kworker/u8:1-21 [000] 1250.167506: snd_soc_bias_level_done: card=vscn-2046 val=3
34
35 There are clearly multiple calls, one per component, but they cannot be
36 discriminated from each other.
37
38 Change the ftrace events to also print the component name, to make it clear
39 which part of the code is involved. This requires changing the passed value
40 from a struct snd_soc_card, where the DAPM context is not kwown, to a
41 struct snd_soc_dapm_context where it is obviously known but the a card
42 pointer is also available.
43
44 With this change, the resulting trace becomes:
45
46 aplay-247 [000] 1436.357332: snd_soc_bias_level_start: card=vscn-2046 component=(none) val=1
47 aplay-247 [000] 1436.357338: snd_soc_bias_level_done: card=vscn-2046 component=(none) val=1
48 aplay-247 [000] 1436.357340: snd_soc_bias_level_start: card=vscn-2046 component=(none) val=2
49 aplay-247 [000] 1436.357343: snd_soc_bias_level_done: card=vscn-2046 component=(none) val=2
50 kworker/u8:4-215 [000] 1436.357437: snd_soc_bias_level_start: card=vscn-2046 component=ff560000.codec val=1
51 kworker/u8:5-231 [000] 1436.357518: snd_soc_bias_level_start: card=vscn-2046 component=ff320000.i2s val=1
52 kworker/u8:5-231 [000] 1436.357523: snd_soc_bias_level_done: card=vscn-2046 component=ff320000.i2s val=1
53 kworker/u8:5-231 [000] 1436.357526: snd_soc_bias_level_start: card=vscn-2046 component=ff320000.i2s val=2
54 kworker/u8:5-231 [000] 1436.357528: snd_soc_bias_level_done: card=vscn-2046 component=ff320000.i2s val=2
55 kworker/u8:4-215 [000] 1436.383217: snd_soc_bias_level_done: card=vscn-2046 component=ff560000.codec val=1
56 kworker/u8:4-215 [000] 1436.383221: snd_soc_bias_level_start: card=vscn-2046 component=ff560000.codec val=2
57 kworker/u8:4-215 [000] 1436.383231: snd_soc_bias_level_done: card=vscn-2046 component=ff560000.codec val=2
58 kworker/u8:5-231 [000] 1436.383468: snd_soc_bias_level_start: card=vscn-2046 component=ff320000.i2s val=3
59 kworker/u8:5-231 [000] 1436.383472: snd_soc_bias_level_done: card=vscn-2046 component=ff320000.i2s val=3
60 kworker/u8:4-215 [000] 1436.383503: snd_soc_bias_level_start: card=vscn-2046 component=ff560000.codec val=3
61 kworker/u8:4-215 [000] 1436.383513: snd_soc_bias_level_done: card=vscn-2046 component=ff560000.codec val=3
62
63Upstream-Status: Backport [303434ab Fix: ASoC add component to set_bias_level events in linux 6.9-rc1]
64
65Change-Id: I959f1680c002acdf29828b968d3975247f5433d8
66Signed-off-by: Kienan Stewart <kstewart@efficios.com>
67Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
68---
69 include/instrumentation/events/asoc.h | 36 +++++++++++++++++++++++++++
70 1 file changed, 36 insertions(+)
71
72Index: lttng-modules-2.13.12/include/instrumentation/events/asoc.h
73===================================================================
74--- lttng-modules-2.13.12.orig/include/instrumentation/events/asoc.h
75+++ lttng-modules-2.13.12/include/instrumentation/events/asoc.h
76@@ -10,6 +10,7 @@
77 #include <lttng/kernel-version.h>
78
79 #define DAPM_DIRECT "(direct)"
80+#define DAPM_COMPONENT_NONE "(none)"
81
82 #ifndef _TRACE_ASOC_DEF
83 #define _TRACE_ASOC_DEF
84@@ -119,6 +120,40 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc
85 )
86 #endif
87
88+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0))
89+LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_context,
90+
91+ TP_PROTO(struct snd_soc_dapm_context *dapm, int val),
92+
93+ TP_ARGS(dapm, val),
94+
95+ TP_FIELDS(
96+ ctf_string(name, dapm->card->name)
97+ ctf_string(component, dapm->component ? dapm->component->name : DAPM_COMPONENT_NONE)
98+ ctf_integer(int, val, val)
99+ )
100+)
101+
102+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_context, snd_soc_bias_level_start,
103+
104+ asoc_snd_soc_bias_level_start,
105+
106+ TP_PROTO(struct snd_soc_dapm_context *dapm, int val),
107+
108+ TP_ARGS(dapm, val)
109+
110+)
111+
112+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc_snd_soc_dapm_context, snd_soc_bias_level_done,
113+
114+ asoc_snd_soc_bias_level_done,
115+
116+ TP_PROTO(struct snd_soc_dapm_context *dapm, int val),
117+
118+ TP_ARGS(dapm, val)
119+
120+)
121+#else
122 LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_card,
123
124 TP_PROTO(struct snd_soc_card *card, int val),
125@@ -150,6 +185,7 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(asoc
126 TP_ARGS(card, val)
127
128 )
129+#endif
130
131 #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0))
132 LTTNG_TRACEPOINT_EVENT_CLASS(asoc_snd_soc_dapm_basic,
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0002-fix-btrfs-move-parent-and-ref_root-into-btrfs_delaye.patch b/meta/recipes-kernel/lttng/lttng-modules/0002-fix-btrfs-move-parent-and-ref_root-into-btrfs_delaye.patch
new file mode 100644
index 0000000000..5d0d1fb314
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0002-fix-btrfs-move-parent-and-ref_root-into-btrfs_delaye.patch
@@ -0,0 +1,58 @@
1From 9bb17e292631f54fb5af4be4fae32ccd3d3d15c7 Mon Sep 17 00:00:00 2001
2From: Michael Jeanson <mjeanson@efficios.com>
3Date: Mon, 27 May 2024 13:13:15 -0400
4Subject: [PATCH 2/3] fix: btrfs: move ->parent and ->ref_root into
5 btrfs_delayed_ref_node (v6.10)
6
7See upstream commit:
8
9 commit cf4f04325b2b27efa5697ba0ea4c1abdee0035b4
10 Author: Josef Bacik <josef@toxicpanda.com>
11 Date: Fri Apr 12 22:57:13 2024 -0400
12
13 btrfs: move ->parent and ->ref_root into btrfs_delayed_ref_node
14
15 These two members are shared by both the tree refs and data refs, so
16 move them into btrfs_delayed_ref_node proper. This allows us to greatly
17 simplify the comparison code, as the shared refs always only sort on
18 parent, and the non shared refs always sort first on ref_root, and then
19 only data refs sort on their specific fields.
20
21Upstream-Status: Backport [9bb17e29 fix: btrfs: move ->parent and ->ref_root into btrfs_delayed_ref_node (v6.10)]
22
23Change-Id: Ib7c92cc4bb8d674ac66ccfa25c03476f7adaaf90
24Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
25Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
26---
27 include/instrumentation/events/btrfs.h | 8 ++++----
28 1 file changed, 4 insertions(+), 4 deletions(-)
29
30diff --git a/include/instrumentation/events/btrfs.h b/include/instrumentation/events/btrfs.h
31index d73c1ce5..c0c746e2 100644
32--- a/include/instrumentation/events/btrfs.h
33+++ b/include/instrumentation/events/btrfs.h
34@@ -912,8 +912,8 @@ LTTNG_TRACEPOINT_EVENT_CLASS(btrfs_delayed_tree_ref,
35 ctf_integer(u64, bytenr, ref->bytenr)
36 ctf_integer(u64, num_bytes, ref->num_bytes)
37 ctf_integer(int, action, ref->action)
38- ctf_integer(u64, parent, ref->tree_ref.parent)
39- ctf_integer(u64, ref_root, ref->tree_ref.root)
40+ ctf_integer(u64, parent, ref->parent)
41+ ctf_integer(u64, ref_root, ref->ref_root)
42 ctf_integer(int, level, ref->tree_ref.level)
43 ctf_integer(int, type, ref->type)
44 ctf_integer(u64, seq, ref->seq)
45@@ -1196,8 +1196,8 @@ LTTNG_TRACEPOINT_EVENT_CLASS(btrfs_delayed_data_ref,
46 ctf_integer(u64, bytenr, ref->bytenr)
47 ctf_integer(u64, num_bytes, ref->num_bytes)
48 ctf_integer(int, action, ref->action)
49- ctf_integer(u64, parent, ref->data_ref.parent)
50- ctf_integer(u64, ref_root, ref->data_ref.root)
51+ ctf_integer(u64, parent, ref->parent)
52+ ctf_integer(u64, ref_root, ref->ref_root)
53 ctf_integer(u64, owner, ref->data_ref.objectid)
54 ctf_integer(u64, offset, ref->data_ref.offset)
55 ctf_integer(int, type, ref->type)
56--
572.39.2
58
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-mm_compaction_migratepages-changed-in-linux-6.9-.patch b/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-mm_compaction_migratepages-changed-in-linux-6.9-.patch
deleted file mode 100644
index 66c48ebe8f..0000000000
--- a/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-mm_compaction_migratepages-changed-in-linux-6.9-.patch
+++ /dev/null
@@ -1,81 +0,0 @@
1From f4a6415f8d5fa447868d1fdc7119e0a328966379 Mon Sep 17 00:00:00 2001
2From: Kienan Stewart <kstewart@efficios.com>
3Date: Mon, 25 Mar 2024 10:30:32 -0400
4Subject: [PATCH 3/4] Fix: mm_compaction_migratepages changed in linux 6.9-rc1
5
6See upstream commit:
7
8 commit ab755bf4249b992fc2140d615ab0a686d50765b4
9 Author: Baolin Wang <baolin.wang@linux.alibaba.com>
10 Date: Tue Feb 20 14:16:31 2024 +0800
11
12 mm: compaction: update the cc->nr_migratepages when allocating or freeing the freepages
13
14 Currently we will use 'cc->nr_freepages >= cc->nr_migratepages' comparison
15 to ensure that enough freepages are isolated in isolate_freepages(),
16 however it just decreases the cc->nr_freepages without updating
17 cc->nr_migratepages in compaction_alloc(), which will waste more CPU
18 cycles and cause too many freepages to be isolated.
19
20 So we should also update the cc->nr_migratepages when allocating or
21 freeing the freepages to avoid isolating excess freepages. And I can see
22 fewer free pages are scanned and isolated when running thpcompact on my
23 Arm64 server:
24
25 k6.7 k6.7_patched
26 Ops Compaction pages isolated 120692036.00 118160797.00
27 Ops Compaction migrate scanned 131210329.00 154093268.00
28 Ops Compaction free scanned 1090587971.00 1080632536.00
29 Ops Compact scan efficiency 12.03 14.26
30
31 Moreover, I did not see an obvious latency improvements, this is likely
32 because isolating freepages is not the bottleneck in the thpcompact test
33 case.
34
35 k6.7 k6.7_patched
36 Amean fault-both-1 1089.76 ( 0.00%) 1080.16 * 0.88%*
37 Amean fault-both-3 1616.48 ( 0.00%) 1636.65 * -1.25%*
38 Amean fault-both-5 2266.66 ( 0.00%) 2219.20 * 2.09%*
39 Amean fault-both-7 2909.84 ( 0.00%) 2801.90 * 3.71%*
40 Amean fault-both-12 4861.26 ( 0.00%) 4733.25 * 2.63%*
41 Amean fault-both-18 7351.11 ( 0.00%) 6950.51 * 5.45%*
42 Amean fault-both-24 9059.30 ( 0.00%) 9159.99 * -1.11%*
43 Amean fault-both-30 10685.68 ( 0.00%) 11399.02 * -6.68%*
44
45Upstream-Status: Backport [175fe77c Fix: mm_compaction_migratepages changed in linux 6.9-rc1]
46
47Change-Id: I103a43fd1b549360b3fc978fd409b7c17ef3e192
48Signed-off-by: Kienan Stewart <kstewart@efficios.com>
49Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
50---
51 include/instrumentation/events/compaction.h | 17 ++++++++++++++++-
52 1 file changed, 16 insertions(+), 1 deletion(-)
53
54Index: lttng-modules-2.13.12/include/instrumentation/events/compaction.h
55===================================================================
56--- lttng-modules-2.13.12.orig/include/instrumentation/events/compaction.h
57+++ lttng-modules-2.13.12/include/instrumentation/events/compaction.h
58@@ -97,7 +97,22 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(comp
59
60 #endif /* #else #if LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,0,0) */
61
62-#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,18,0) || \
63+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0))
64+LTTNG_TRACEPOINT_EVENT_MAP(mm_compaction_migratepages,
65+
66+ compaction_migratepages,
67+
68+ TP_PROTO(unsigned int nr_migratepages,
69+ unsigned int nr_succeeded),
70+
71+ TP_ARGS(nr_migratepages, nr_succeeded),
72+
73+ TP_FIELDS(
74+ ctf_integer(unsigned long, nr_migrated, nr_succeeded)
75+ ctf_integer(unsigned long, nr_failed, nr_migratepages - nr_succeeded)
76+ )
77+)
78+#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,18,0) || \
79 LTTNG_RHEL_KERNEL_RANGE(5,14,0,163,0,0, 5,15,0,0,0,0))
80 LTTNG_TRACEPOINT_EVENT_MAP(mm_compaction_migratepages,
81
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0003-fix-net-udp-add-IP-port-data-to-the-tracepoint-udp-u.patch b/meta/recipes-kernel/lttng/lttng-modules/0003-fix-net-udp-add-IP-port-data-to-the-tracepoint-udp-u.patch
new file mode 100644
index 0000000000..ab28f870c5
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-modules/0003-fix-net-udp-add-IP-port-data-to-the-tracepoint-udp-u.patch
@@ -0,0 +1,79 @@
1From 4ae0d960e149d1205d0cc167e44c120148c7f4f0 Mon Sep 17 00:00:00 2001
2From: Michael Jeanson <mjeanson@efficios.com>
3Date: Mon, 27 May 2024 11:11:21 -0400
4Subject: [PATCH 3/3] fix: net: udp: add IP/port data to the tracepoint
5 udp/udp_fail_queue_rcv_skb (v6.10)
6
7See upstream commit:
8
9 commit e9669a00bba79442dd4862c57761333d6a020c24
10 Author: Balazs Scheidler <bazsi77@gmail.com>
11 Date: Tue Mar 26 19:05:47 2024 +0100
12
13 net: udp: add IP/port data to the tracepoint udp/udp_fail_queue_rcv_skb
14
15 The udp_fail_queue_rcv_skb() tracepoint lacks any details on the source
16 and destination IP/port whereas this information can be critical in case
17 of UDP/syslog.
18
19Upstream-Status: Backport [4ae0d960 fix: net: udp: add IP/port data to the tracepoint udp/udp_fail_queue_rcv_skb (v6.10)]
20
21Change-Id: I0c337c5817b0a120298cbf5088d60671d9625b0d
22Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
23Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
24---
25 include/instrumentation/events/udp.h | 30 ++++++++++++++++++++++++++++
26 1 file changed, 30 insertions(+)
27
28diff --git a/include/instrumentation/events/udp.h b/include/instrumentation/events/udp.h
29index b63a1bb5..0a94b466 100644
30--- a/include/instrumentation/events/udp.h
31+++ b/include/instrumentation/events/udp.h
32@@ -7,7 +7,36 @@
33
34 #include <lttng/tracepoint-event.h>
35 #include <linux/udp.h>
36+#include <lttng/kernel-version.h>
37
38+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,10,0))
39+LTTNG_TRACEPOINT_ENUM(lttng_sk_family,
40+ TP_ENUM_VALUES(
41+ ctf_enum_value("AF_INET", AF_INET)
42+ ctf_enum_value("AF_INET6", AF_INET6)
43+ )
44+)
45+
46+LTTNG_TRACEPOINT_EVENT(udp_fail_queue_rcv_skb,
47+
48+ TP_PROTO(int rc, struct sock *sk, struct sk_buff *skb),
49+
50+ TP_ARGS(rc, sk, skb),
51+
52+ TP_FIELDS(
53+ ctf_integer(int, rc, rc)
54+ ctf_integer(__u16, sport, ntohs(udp_hdr(skb)->source))
55+ ctf_integer(__u16, dport, ntohs(udp_hdr(skb)->dest))
56+ ctf_enum(lttng_sk_family, __u16, family, sk->sk_family)
57+ /*
58+ * The 'saddr' and 'daddr' fields from the upstream tracepoint
59+ * are currently not extracted. It is recommended to use a
60+ * tracepoint from the 'net' probe instead which includes all
61+ * fields from the IP header.
62+ */
63+ )
64+)
65+#else
66 LTTNG_TRACEPOINT_EVENT(udp_fail_queue_rcv_skb,
67
68 TP_PROTO(int rc, struct sock *sk),
69@@ -19,6 +48,7 @@ LTTNG_TRACEPOINT_EVENT(udp_fail_queue_rcv_skb,
70 ctf_integer(__u16, lport, inet_sk(sk)->inet_num)
71 )
72 )
73+#endif
74
75 #endif /* LTTNG_TRACE_UDP_H */
76
77--
782.39.2
79
diff --git a/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-dev_base_lock-removed-in-linux-6.9-rc1.patch b/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-dev_base_lock-removed-in-linux-6.9-rc1.patch
deleted file mode 100644
index 59ef4f9313..0000000000
--- a/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-dev_base_lock-removed-in-linux-6.9-rc1.patch
+++ /dev/null
@@ -1,57 +0,0 @@
1From 217bc2e4685050dddce9bdd2557b64f6b8c16622 Mon Sep 17 00:00:00 2001
2From: Kienan Stewart <kstewart@efficios.com>
3Date: Mon, 25 Mar 2024 10:53:46 -0400
4Subject: [PATCH 4/4] Fix: dev_base_lock removed in linux 6.9-rc1
5
6See upstream commit:
7
8 commit 1b3ef46cb7f2618cc0b507393220a69810f6da12
9 Author: Eric Dumazet <edumazet@google.com>
10 Date: Tue Feb 13 06:32:45 2024 +0000
11
12 net: remove dev_base_lock
13
14 dev_base_lock is not needed anymore, all remaining users also hold RTNL.
15
16Upstream-Status: Backport [52eb2ee9 Fix: dev_base_lock removed in linux 6.9-rc1]
17
18Change-Id: I6b07e6eed07fd398302ca14d23162ed24d74df15
19Signed-off-by: Kienan Stewart <kstewart@efficios.com>
20Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
21---
22 src/lttng-statedump-impl.c | 15 +++++++++++++++
23 1 file changed, 15 insertions(+)
24
25Index: lttng-modules-2.13.12/src/lttng-statedump-impl.c
26===================================================================
27--- lttng-modules-2.13.12.orig/src/lttng-statedump-impl.c
28+++ lttng-modules-2.13.12/src/lttng-statedump-impl.c
29@@ -392,6 +392,20 @@ void lttng_enumerate_device(struct lttng
30 }
31 }
32
33+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0))
34+static
35+int lttng_enumerate_network_ip_interface(struct lttng_kernel_session *session)
36+{
37+ struct net_device *dev;
38+
39+ rtnl_lock();
40+ for_each_netdev(&init_net, dev)
41+ lttng_enumerate_device(session, dev);
42+ rtnl_unlock();
43+
44+ return 0;
45+}
46+#else
47 static
48 int lttng_enumerate_network_ip_interface(struct lttng_kernel_session *session)
49 {
50@@ -404,6 +418,7 @@ int lttng_enumerate_network_ip_interface
51
52 return 0;
53 }
54+#endif /* (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,9,0)) */
55 #else /* CONFIG_INET */
56 static inline
57 int lttng_enumerate_network_ip_interface(struct lttng_kernel_session *session)
diff --git a/meta/recipes-kernel/lttng/lttng-modules_2.13.12.bb b/meta/recipes-kernel/lttng/lttng-modules_2.13.13.bb
index 95d5e2d615..75b144757a 100644
--- a/meta/recipes-kernel/lttng/lttng-modules_2.13.12.bb
+++ b/meta/recipes-kernel/lttng/lttng-modules_2.13.13.bb
@@ -10,16 +10,16 @@ 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-ASoC-snd_doc_dapm-on-linux-6.9-rc1.patch \ 13 file://0001-fix-btrfs-simplify-delayed-ref-tracepoints-v6.10.patch \
14 file://0002-Fix-ASoC-add-component-to-set_bias_level-events-in-l.patch \ 14 file://0002-fix-btrfs-move-parent-and-ref_root-into-btrfs_delaye.patch \
15 file://0003-Fix-mm_compaction_migratepages-changed-in-linux-6.9-.patch \ 15 file://0003-fix-net-udp-add-IP-port-data-to-the-tracepoint-udp-u.patch \
16 file://0004-Fix-dev_base_lock-removed-in-linux-6.9-rc1.patch \ 16 file://0001-fix-close_on_exec-pass-files_struct-instead-of-fdtab.patch \
17 " 17 "
18 18
19# Use :append here so that the patch is applied also when using devupstream 19# Use :append here so that the patch is applied also when using devupstream
20SRC_URI:append = " file://0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch" 20SRC_URI:append = " file://0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch"
21 21
22SRC_URI[sha256sum] = "d85fcb66c7bd31003ab8735e8c77700e5e4f417b4c22fe1f20112cf435abad79" 22SRC_URI[sha256sum] = "7d26c07a5e80b66aa7bdcfdaaf4857f00fc9a5cdde79226b2528676700d50228"
23 23
24export INSTALL_MOD_DIR="kernel/lttng-modules" 24export INSTALL_MOD_DIR="kernel/lttng-modules"
25 25