lttng-modules: Backport Linux 5.18+, 5.15.44+, 5.10.119+ fixes

The Linux kernel commit 14c174633f349 ("random: remove unused tracepoints")
removed unused tracepoints and has been backported to stable Linux kernel
releases. This causes build failure of lttng-modules:

"
lttng-modules-2.11.6/probes/lttng-probe-random.c:18:10: fatal error: trace/events/random.h: No such file or directory
|    18 | #include <trace/events/random.h>
|       |          ^~~~~~~~~~~~~~~~~~~~~~~
| compilation terminated.
"

Backport patches from lttng-modules master branch to address the build
failure on all of Linux 5.18.y, 5.15.y 5.10.y, 5.4, 4.19, 4.14, and 4.9 kernel versions.

(From OE-Core rev: 9f301f5563df868626d624c2d0781dae1b81a4c0)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Bruce Ashfield <bruce.ashfield@gmail.com>
Cc: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Marek Vasut
2022-06-26 00:39:36 +02:00
committed by Richard Purdie
parent 0a0e0663ab
commit d2f8a57a30
4 changed files with 145 additions and 0 deletions

View File

@@ -0,0 +1,46 @@
From 25b70c486bb96de0caf7cea1da42ed07801cca84 Mon Sep 17 00:00:00 2001
From: Michael Jeanson <mjeanson@efficios.com>
Date: Mon, 4 Apr 2022 14:33:42 -0400
Subject: [PATCH 17/19] fix: random: remove unused tracepoints (v5.18)
See upstream commit :
commit 14c174633f349cb41ea90c2c0aaddac157012f74
Author: Jason A. Donenfeld <Jason@zx2c4.com>
Date: Thu Feb 10 16:40:44 2022 +0100
random: remove unused tracepoints
These explicit tracepoints aren't really used and show sign of aging.
It's work to keep these up to date, and before I attempted to keep them
up to date, they weren't up to date, which indicates that they're not
really used. These days there are better ways of introspecting anyway.
Upstream-Status: Backport [369d82bb1746447514c877088d7c5fd0f39140f8]
Change-Id: I3b8c3e2732e7efdd76ce63204ac53a48784d0df6
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
---
probes/Kbuild | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/probes/Kbuild b/probes/Kbuild
index 3ae2d39e..58da82b8 100644
--- a/probes/Kbuild
+++ b/probes/Kbuild
@@ -215,8 +215,11 @@ ifneq ($(CONFIG_FRAME_WARN),0)
CFLAGS_lttng-probe-printk.o += -Wframe-larger-than=2200
endif
+# Introduced in v3.6, remove in v5.18
obj-$(CONFIG_LTTNG) += $(shell \
- if [ $(VERSION) -ge 4 \
+ if [ \( ! \( $(VERSION) -ge 6 -o \( $(VERSION) -eq 5 -a $(PATCHLEVEL) -ge 18 \) \) \) \
+ -a \
+ $(VERSION) -ge 4 \
-o \( $(VERSION) -eq 3 -a $(PATCHLEVEL) -ge 6 \) \
-o \( $(VERSION) -eq 3 -a $(PATCHLEVEL) -eq 5 -a $(SUBLEVEL) -ge 2 \) \
-o \( $(VERSION) -eq 3 -a $(PATCHLEVEL) -eq 4 -a $(SUBLEVEL) -ge 9 \) \
--
2.35.1

View File

@@ -0,0 +1,45 @@
From da956d1444139883f5d01078d945078738ffade4 Mon Sep 17 00:00:00 2001
From: He Zhe <zhe.he@windriver.com>
Date: Thu, 2 Jun 2022 06:36:08 +0000
Subject: [PATCH 18/19] fix: random: remove unused tracepoints (v5.10, v5.15)
The following kernel commit has been back ported to v5.10.119 and v5.15.44.
commit 14c174633f349cb41ea90c2c0aaddac157012f74
Author: Jason A. Donenfeld <Jason@zx2c4.com>
Date: Thu Feb 10 16:40:44 2022 +0100
random: remove unused tracepoints
These explicit tracepoints aren't really used and show sign of aging.
It's work to keep these up to date, and before I attempted to keep them
up to date, they weren't up to date, which indicates that they're not
really used. These days there are better ways of introspecting anyway.
Upstream-Status: Backport [1901e0eb58795e850e8fdcb5e1c235e4397b470d]
Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Change-Id: I0b7eb8aa78b5bd2039e20ae3e1da4c5eb9018789
---
probes/Kbuild | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/probes/Kbuild b/probes/Kbuild
index 58da82b8..87f2d681 100644
--- a/probes/Kbuild
+++ b/probes/Kbuild
@@ -217,7 +217,10 @@ endif
# Introduced in v3.6, remove in v5.18
obj-$(CONFIG_LTTNG) += $(shell \
- if [ \( ! \( $(VERSION) -ge 6 -o \( $(VERSION) -eq 5 -a $(PATCHLEVEL) -ge 18 \) \) \) \
+ if [ \( ! \( $(VERSION) -ge 6 \
+ -o \( $(VERSION) -eq 5 -a $(PATCHLEVEL) -ge 18 \) \
+ -o \( $(VERSION) -eq 5 -a $(PATCHLEVEL) -eq 15 -a $(SUBLEVEL) -ge 44 \) \
+ -o \( $(VERSION) -eq 5 -a $(PATCHLEVEL) -eq 10 -a $(SUBLEVEL) -ge 119\) \) \) \
-a \
$(VERSION) -ge 4 \
-o \( $(VERSION) -eq 3 -a $(PATCHLEVEL) -ge 6 \) \
--
2.35.1

View File

@@ -0,0 +1,51 @@
From 2c98e0cd03eba0aa935796bc7413c51b5e4b055c Mon Sep 17 00:00:00 2001
From: Michael Jeanson <mjeanson@efficios.com>
Date: Tue, 31 May 2022 15:24:48 -0400
Subject: [PATCH 19/19] fix: 'random' tracepoints removed in stable kernels
The upstream commit 14c174633f349cb41ea90c2c0aaddac157012f74 removing
the 'random' tracepoints is being backported to multiple stable kernel
branches, I don't see how that qualifies as a fix but here we are.
Use the presence of 'include/trace/events/random.h' in the kernel source
tree instead of the rather tortuous version check to determine if we
need to build 'lttng-probe-random.ko'.
Upstream-Status: Backport [ed1149ef88fb62c365ac66cf62c58ac6abd8d7e8]
Change-Id: I8f5f2f4c9e09c61127c49c7949b22dd3fab0460d
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
---
probes/Kbuild | 16 ++++------------
1 file changed, 4 insertions(+), 12 deletions(-)
diff --git a/probes/Kbuild b/probes/Kbuild
index 87f2d681..f09d6b65 100644
--- a/probes/Kbuild
+++ b/probes/Kbuild
@@ -216,18 +216,10 @@ ifneq ($(CONFIG_FRAME_WARN),0)
endif
# Introduced in v3.6, remove in v5.18
-obj-$(CONFIG_LTTNG) += $(shell \
- if [ \( ! \( $(VERSION) -ge 6 \
- -o \( $(VERSION) -eq 5 -a $(PATCHLEVEL) -ge 18 \) \
- -o \( $(VERSION) -eq 5 -a $(PATCHLEVEL) -eq 15 -a $(SUBLEVEL) -ge 44 \) \
- -o \( $(VERSION) -eq 5 -a $(PATCHLEVEL) -eq 10 -a $(SUBLEVEL) -ge 119\) \) \) \
- -a \
- $(VERSION) -ge 4 \
- -o \( $(VERSION) -eq 3 -a $(PATCHLEVEL) -ge 6 \) \
- -o \( $(VERSION) -eq 3 -a $(PATCHLEVEL) -eq 5 -a $(SUBLEVEL) -ge 2 \) \
- -o \( $(VERSION) -eq 3 -a $(PATCHLEVEL) -eq 4 -a $(SUBLEVEL) -ge 9 \) \
- -o \( $(VERSION) -eq 3 -a $(PATCHLEVEL) -eq 0 -a $(SUBLEVEL) -ge 41 \) ] ; then \
- echo "lttng-probe-random.o" ; fi;)
+random_dep = $(srctree)/include/trace/events/random.h
+ifneq ($(wildcard $(random_dep)),)
+ obj-$(CONFIG_LTTNG) += lttng-probe-random.o
+endif
obj-$(CONFIG_LTTNG) += $(shell \
if [ $(VERSION) -ge 4 \
--
2.35.1

View File

@@ -28,6 +28,9 @@ SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \
file://0014-Revert-fix-include-order-for-older-kernels.patch \
file://0015-fix-backport-of-fix-tracepoint-Optimize-using-static.patch \
file://0016-fix-adjust-version-range-for-trace_find_free_extent.patch \
file://0017-fix-random-remove-unused-tracepoints-v5.18.patch \
file://0018-fix-random-remove-unused-tracepoints-v5.10-v5.15.patch \
file://0019-fix-random-tracepoints-removed-in-stable-kernels.patch \
"
SRC_URI[md5sum] = "8ef09fdfcdec669d33f7fc1c1c80f2c4"