From 1d5f7193ef51f85a2db9b032d3c11d10e4108d44 Mon Sep 17 00:00:00 2001 From: Jan Palus Date: Sun, 8 Jan 2023 14:44:37 +0100 Subject: [PATCH] fix build with recent kernels; rel 3 6.1.4 and 6.0.18 ship with backport of patch changing tid type in jbd2 trace: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d87a7b4c77a997d5388566dd511ca8e6b8e8a0a8 --- jbd2-tid-type.patch | 51 +++++++++++++++++++++++++++++++++++++++++++++ lttng-modules.spec | 4 +++- 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 jbd2-tid-type.patch diff --git a/jbd2-tid-type.patch b/jbd2-tid-type.patch new file mode 100644 index 0000000..78a7f27 --- /dev/null +++ b/jbd2-tid-type.patch @@ -0,0 +1,51 @@ +--- lttng-modules-2.13.7/include/instrumentation/events/jbd2.h.orig 2022-09-30 23:11:06.000000000 +0200 ++++ lttng-modules-2.13.7/include/instrumentation/events/jbd2.h 2023-01-08 14:25:51.090957315 +0100 +@@ -15,6 +15,14 @@ + struct transaction_run_stats_s; + #endif + ++#ifndef _TRACE_JBD2_TID_T ++#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,1,4)) || (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,0,18) && LTTNG_LINUX_VERSION_CODE < LTTNG_KERNEL_VERSION(6,1,0)) ++#define _TRACE_JBD2_TID_T tid_t ++#else ++#define _TRACE_JBD2_TID_T unsigned long ++#endif ++#endif ++ + LTTNG_TRACEPOINT_EVENT(jbd2_checkpoint, + + TP_PROTO(journal_t *journal, int result), +@@ -102,14 +110,14 @@ + ) + + LTTNG_TRACEPOINT_EVENT(jbd2_run_stats, +- TP_PROTO(dev_t dev, unsigned long tid, ++ TP_PROTO(dev_t dev, _TRACE_JBD2_TID_T tid, + struct transaction_run_stats_s *stats), + + TP_ARGS(dev, tid, stats), + + TP_FIELDS( + ctf_integer(dev_t, dev, dev) +- ctf_integer(unsigned long, tid, tid) ++ ctf_integer(_TRACE_JBD2_TID_T, tid, tid) + ctf_integer(unsigned long, wait, stats->rs_wait) + ctf_integer(unsigned long, running, stats->rs_running) + ctf_integer(unsigned long, locked, stats->rs_locked) +@@ -122,14 +130,14 @@ + ) + + LTTNG_TRACEPOINT_EVENT(jbd2_checkpoint_stats, +- TP_PROTO(dev_t dev, unsigned long tid, ++ TP_PROTO(dev_t dev, _TRACE_JBD2_TID_T tid, + struct transaction_chp_stats_s *stats), + + TP_ARGS(dev, tid, stats), + + TP_FIELDS( + ctf_integer(dev_t, dev, dev) +- ctf_integer(unsigned long, tid, tid) ++ ctf_integer(_TRACE_JBD2_TID_T, tid, tid) + ctf_integer(unsigned long, chp_time, stats->cs_chp_time) + ctf_integer(__u32, forced_to_close, stats->cs_forced_to_close) + ctf_integer(__u32, written, stats->cs_written) diff --git a/lttng-modules.spec b/lttng-modules.spec index ef2ceea..05f240d 100644 --- a/lttng-modules.spec +++ b/lttng-modules.spec @@ -6,7 +6,7 @@ # nothing to be placed to debuginfo package %define _enable_debug_packages 0 -%define rel 2 +%define rel 3 %define pname lttng-modules Summary: LTTng 2.x kernel modules Summary(pl.UTF-8): Moduły jądra LTTng 2.x @@ -19,6 +19,7 @@ Source0: https://lttng.org/files/lttng-modules/%{pname}-%{version}.tar.bz2 # Source0-md5: fe95650bcb5d718e794b9cc8df794904 Patch0: build.patch Patch1: kernel-6.1.patch +Patch2: jbd2-tid-type.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}} @@ -96,6 +97,7 @@ p=`pwd`\ cd %{pname}-%{version} %patch0 -p1 %patch1 -p1 +%patch2 -p1 %build cd %{pname}-%{version} -- 2.44.0