[packages/lttng-modules] - fix building for 4.19.312
baggins
baggins at pld-linux.org
Sun Apr 28 22:48:16 CEST 2024
commit c455c7ad8007b13fa6048e76ab89ac1fad6196f1
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Sun Apr 28 22:44:17 2024 +0200
- fix building for 4.19.312
lttng-modules.spec | 2 ++
timer_expire_entry.patch | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 50 insertions(+)
---
diff --git a/lttng-modules.spec b/lttng-modules.spec
index ad2fb62..c1c7844 100644
--- a/lttng-modules.spec
+++ b/lttng-modules.spec
@@ -18,6 +18,7 @@ Group: Base/Kernel
Source0: https://lttng.org/files/lttng-modules/%{pname}-%{version}.tar.bz2
# Source0-md5: d84589cceb5a43bef749b48ab57c3860
Patch0: build.patch
+Patch1: timer_expire_entry.patch
URL: https://lttng.org/
%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:3.0}
%{?with_kernelsrc:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-source >= 3:3.0}}
@@ -94,6 +95,7 @@ p=`pwd`\
%setup -qc -n %{name}-%{version}
cd %{pname}-%{version}
%patch0 -p1
+%patch1 -p1
%build
cd %{pname}-%{version}
diff --git a/timer_expire_entry.patch b/timer_expire_entry.patch
new file mode 100644
index 0000000..45794b4
--- /dev/null
+++ b/timer_expire_entry.patch
@@ -0,0 +1,48 @@
+commit b258b549a9bc218a08c102ba54aac2c1d477b45a
+Author: Kienan Stewart <kstewart at efficios.com>
+Date: Mon Apr 15 09:25:26 2024 -0400
+
+ Fix: timer_expire_entry changed in 4.19.312
+
+ See upstream commit:
+
+ commit bbb5b1c060d73ca96ccc8cceaa81f5e1a96e8fa4
+ Author: Anna-Maria Gleixner <anna-maria at linutronix.de>
+ Date: Thu Mar 21 13:09:21 2019 +0100
+
+ timer/trace: Improve timer tracing
+
+ [ Upstream commit f28d3d5346e97e60c81f933ac89ccf015430e5cf ]
+
+ Timers are added to the timer wheel off by one. This is required in
+ case a timer is queued directly before incrementing jiffies to prevent
+ early timer expiry.
+
+ When reading a timer trace and relying only on the expiry time of the timer
+ in the timer_start trace point and on the now in the timer_expiry_entry
+ trace point, it seems that the timer fires late. With the current
+ timer_expiry_entry trace point information only now=jiffies is printed but
+ not the value of base->clk. This makes it impossible to draw a conclusion
+ to the index of base->clk and makes it impossible to examine timer problems
+ without additional trace points.
+
+ Therefore add the base->clk value to the timer_expire_entry trace
+ point, to be able to calculate the index the timer base is located at
+ during collecting expired timers.
+
+ Change-Id: I2ebdbb637db0966ff51f45bf66916a59a496b50c
+ Signed-off-by: Kienan Stewart <kstewart at efficios.com>
+ Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers at efficios.com>
+
+diff --git a/include/instrumentation/events/timer.h b/include/instrumentation/events/timer.h
+index bd21c037..77c4111a 100644
+--- a/include/instrumentation/events/timer.h
++++ b/include/instrumentation/events/timer.h
+@@ -112,6 +112,7 @@ LTTNG_TRACEPOINT_EVENT(timer_start,
+ #endif
+
+ #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,2,0) || \
++ LTTNG_KERNEL_RANGE(4,19,312, 4,20,0) || \
+ LTTNG_RHEL_KERNEL_RANGE(4,18,0,193,0,0, 4,19,0,0,0,0))
+ /**
+ * timer_expire_entry - called immediately before the timer callback
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/lttng-modules.git/commitdiff/c455c7ad8007b13fa6048e76ab89ac1fad6196f1
More information about the pld-cvs-commit
mailing list