commit c455c7ad8007b13fa6048e76ab89ac1fad6196f1 Author: Jan Rękorajski <bagg...@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 <kstew...@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-ma...@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 <kstew...@efficios.com> + Signed-off-by: Mathieu Desnoyers <mathieu.desnoy...@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 _______________________________________________ pld-cvs-commit mailing list pld-cvs-commit@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit