Combine poky (Yocto scarthgap), meta-openembedded (scarthgap), and meta-openwrt into a single repository. Components: - poky/ Yocto core framework (BitBake + OE-Core) - meta-openembedded/ Community layers (meta-oe, meta-python, meta-networking) - meta-openwrt/ OpenWrt customization layer - setup-env.sh One-click build environment setup - README.md Project documentation
104 lines
3.8 KiB
Diff
104 lines
3.8 KiB
Diff
From c370026b0a077ba9491b07c559b343fde6353074 Mon Sep 17 00:00:00 2001
|
|
From: Michael Jeanson <mjeanson@efficios.com>
|
|
Date: Mon, 25 May 2026 10:38:18 -0400
|
|
Subject: [PATCH] fix: hrtimer: Reduce trace noise in hrtimer_start() (v7.1)
|
|
|
|
|
|
See upstream commit:
|
|
|
|
commit f2e388a019e4cf83a15883a3d1f1384298e9a6aa
|
|
Author: Thomas Gleixner <tglx@kernel.org>
|
|
Date: Tue Feb 24 17:36:59 2026 +0100
|
|
|
|
hrtimer: Reduce trace noise in hrtimer_start()
|
|
|
|
hrtimer_start() when invoked with an already armed timer traces like:
|
|
|
|
<comm>-.. [032] d.h2. 5.002263: hrtimer_cancel: hrtimer= ....
|
|
<comm>-.. [032] d.h1. 5.002263: hrtimer_start: hrtimer= ....
|
|
|
|
Which is incorrect as the timer doesn't get canceled. Just the expiry time
|
|
changes. The internal dequeue operation which is required for that is not
|
|
really interesting for trace analysis. But it makes it tedious to keep real
|
|
cancellations and the above case apart.
|
|
|
|
Remove the cancel tracing in hrtimer_start() and add a 'was_armed'
|
|
indicator to the hrtimer start tracepoint, which clearly indicates what the
|
|
state of the hrtimer is when hrtimer_start() is invoked:
|
|
|
|
<comm>-.. [032] d.h1. 6.200103: hrtimer_start: hrtimer= .... was_armed=0
|
|
<comm>-.. [032] d.h1. 6.200558: hrtimer_start: hrtimer= .... was_armed=1
|
|
|
|
Change-Id: I37ee0ae0af665a51fd4f92adffb6b1dcb2ecd9d2
|
|
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
|
|
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
|
|
Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/b77f94c7a7109e70a97bf936b72d66d611187d61]
|
|
Signed-off-by: He Zhe <zhe.he@windriver.com>
|
|
[YC: Backport: revert usage of non-defined-yet ctf_enum]
|
|
Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
|
|
---
|
|
include/instrumentation/events/timer.h | 39 ++++++++++++++++++++++++--
|
|
1 file changed, 37 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/include/instrumentation/events/timer.h b/include/instrumentation/events/timer.h
|
|
index bd21c03..9d4476a 100644
|
|
--- a/include/instrumentation/events/timer.h
|
|
+++ b/include/instrumentation/events/timer.h
|
|
@@ -203,12 +203,43 @@ LTTNG_TRACEPOINT_EVENT_MAP(hrtimer_init,
|
|
)
|
|
)
|
|
|
|
+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(7,1,0) || \
|
|
+ LTTNG_KERNEL_RANGE(7,0,10, 7,1,0) || \
|
|
+ LTTNG_KERNEL_RANGE(6,18,33, 6,19,0) || \
|
|
+ LTTNG_KERNEL_RANGE(6,12,91, 6,13,0) || \
|
|
+ LTTNG_KERNEL_RANGE(6,6,141, 6,7,0))
|
|
/**
|
|
* hrtimer_start - called when the hrtimer is started
|
|
- * @timer: pointer to struct hrtimer
|
|
+ * @hrtimer: pointer to struct hrtimer
|
|
+ * @mode: the hrtimers mode
|
|
+ * @was_armed: Was armed when hrtimer_start*() was invoked
|
|
*/
|
|
-#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,16,0) || \
|
|
+LTTNG_TRACEPOINT_EVENT_MAP(hrtimer_start,
|
|
+
|
|
+ timer_hrtimer_start,
|
|
+
|
|
+ TP_PROTO(struct hrtimer *hrtimer, enum hrtimer_mode mode, bool was_armed),
|
|
+
|
|
+ TP_ARGS(hrtimer, mode, was_armed),
|
|
+
|
|
+ TP_FIELDS(
|
|
+ ctf_integer_hex(void *, hrtimer, hrtimer)
|
|
+ ctf_integer_hex(void *, function, hrtimer->function)
|
|
+ ctf_integer(s64, expires,
|
|
+ lttng_ktime_get_tv64(hrtimer_get_expires(hrtimer)))
|
|
+ ctf_integer(s64, softexpires,
|
|
+ lttng_ktime_get_tv64(hrtimer_get_softexpires(hrtimer)))
|
|
+ ctf_integer(enum hrtimer_mode, mode, mode)
|
|
+ ctf_integer(bool, was_armed, was_armed)
|
|
+ )
|
|
+)
|
|
+#elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,16,0) || \
|
|
LTTNG_RT_KERNEL_RANGE(4,14,0,0, 4,15,0,0))
|
|
+/**
|
|
+ * hrtimer_start - called when the hrtimer is started
|
|
+ * @hrtimer: pointer to struct hrtimer
|
|
+ * @mode: the hrtimers mode
|
|
+ */
|
|
LTTNG_TRACEPOINT_EVENT_MAP(hrtimer_start,
|
|
|
|
timer_hrtimer_start,
|
|
@@ -228,6 +259,10 @@ LTTNG_TRACEPOINT_EVENT_MAP(hrtimer_start,
|
|
)
|
|
)
|
|
#else
|
|
+/**
|
|
+ * hrtimer_start - called when the hrtimer is started
|
|
+ * @hrtimer: pointer to struct hrtimer
|
|
+ */
|
|
LTTNG_TRACEPOINT_EVENT_MAP(hrtimer_start,
|
|
|
|
timer_hrtimer_start,
|