From: Kienan Stewart Date: Mon, 22 Jan 2024 16:10:37 +0000 (-0500) Subject: Fix: sched_stat_runtime changed in linux 6.8.0-rc1 X-Git-Tag: v2.13.12~12 X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=60a1e80962cbea9e12c301724f11f834a7cb979d;p=lttng-modules.git Fix: sched_stat_runtime changed in linux 6.8.0-rc1 See upstream commit: commit 5fe6ec8f6ab549b6422e41551abb51802bd48bc7 Author: Peter Zijlstra Date: Mon Nov 6 13:41:43 2023 +0100 sched: Remove vruntime from trace_sched_stat_runtime() Tracing the runtime delta makes sense, observer can sum over time. Tracing the absolute vruntime makes less sense, inconsistent: absolute-vs-delta, but also vruntime delta can be computed from runtime delta. Removing the vruntime thing also makes the two tracepoint sites identical, allowing to unify the code in a later patch. Change-Id: I24ebb4e06dbb646a1af75ac62b74f3821ff197de Signed-off-by: Kienan Stewart Signed-off-by: Mathieu Desnoyers --- diff --git a/include/instrumentation/events/sched.h b/include/instrumentation/events/sched.h index 066a0f8e..24cf37c8 100644 --- a/include/instrumentation/events/sched.h +++ b/include/instrumentation/events/sched.h @@ -646,6 +646,24 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE(sched_stat_template, sched_stat_blocked, TP_ARGS(tsk, delay)) #endif +#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,8,0)) +/* + * Tracepoint for accounting runtime (time the task is executing + * on a CPU). + */ +LTTNG_TRACEPOINT_EVENT(sched_stat_runtime, + + TP_PROTO(struct task_struct *tsk, u64 runtime), + + TP_ARGS(tsk, runtime), + + TP_FIELDS( + ctf_array_text(char, comm, tsk->comm, TASK_COMM_LEN) + ctf_integer(pid_t, tid, tsk->pid) + ctf_integer(u64, runtime, runtime) + ) +) +#else /* * Tracepoint for accounting runtime (time the task is executing * on a CPU). @@ -663,6 +681,7 @@ LTTNG_TRACEPOINT_EVENT(sched_stat_runtime, ctf_integer(u64, vruntime, vruntime) ) ) +#endif #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,12,0) || \ LTTNG_RT_KERNEL_RANGE(4,9,27,18, 4,10,0,0) || \