From: "Thomas Weißschuh (Schneider Electric)" <thomas.weissschuh@linutronix.de>
To: Clark Williams <williams@redhat.com>, John Kacur <jkacur@redhat.com>
Cc: linux-rt-users@vger.kernel.org,
"Thomas Weißschuh (Schneider Electric)"
<thomas.weissschuh@linutronix.de>
Subject: [PATCH 6/6] cyclictest: Add support for auxiliary clocks
Date: Tue, 07 Apr 2026 08:48:46 +0200 [thread overview]
Message-ID: <20260407-auxclocks-v1-6-1ef80d14eb0a@linutronix.de> (raw)
In-Reply-To: <20260407-auxclocks-v1-0-1ef80d14eb0a@linutronix.de>
The Linux kernel provides support for non-standard auxiliary clocks.
These run independently from the system clock and each other.
Allow cyclictest to also use those.
Signed-off-by: Thomas Weißschuh (Schneider Electric) <thomas.weissschuh@linutronix.de>
---
Currently clock_nanosleep() for these auxiliary clocks is not yet in the
mainline kernel.
Instead of having a dedicated parsing function, I used the unrolled
switch-case as it keeps the logic simple in the face of error handling.
---
src/cyclictest/cyclictest.8 | 2 ++
src/cyclictest/cyclictest.c | 21 +++++++++++++++++++++
2 files changed, 23 insertions(+)
diff --git a/src/cyclictest/cyclictest.8 b/src/cyclictest/cyclictest.8
index 1a59d3b29048..f3390bc5c57d 100644
--- a/src/cyclictest/cyclictest.8
+++ b/src/cyclictest/cyclictest.8
@@ -59,6 +59,8 @@ select clock
monotonic (default)
.br
realtime
+.br
+aux0 - aux7
.TP
.B \-\-deepest\-idle\-state=n
Reduce exit from idle latency by limiting idle state up to n on used cpus (-1 disables all idle states). Power management is not suppresed on other cpus.
diff --git a/src/cyclictest/cyclictest.c b/src/cyclictest/cyclictest.c
index 2d1ff968f8aa..afc3a8c452da 100644
--- a/src/cyclictest/cyclictest.c
+++ b/src/cyclictest/cyclictest.c
@@ -52,6 +52,10 @@
#define SCHED_NORMAL SCHED_OTHER
#endif
+#ifndef CLOCK_AUX
+#define CLOCK_AUX 16
+#endif
+
#define sigev_notify_thread_id _sigev_un._tid
#ifdef __UCLIBC__
@@ -952,6 +956,7 @@ static void display_help(int error)
"-c CLOCK --clock=CLOCK select clock\n"
" monotonic (default)\n"
" realtime\n"
+ " aux0 - aux7\n"
" --deepest-idle-state=n\n"
" Reduce exit from idle latency by limiting idle state\n"
" up to n on used cpus (-1 disables all idle states).\n"
@@ -1049,6 +1054,22 @@ static int handleclock(const char *clockarg)
used_clock = CLOCK_REALTIME;
else if (strcmp(clockarg, "realtime") == 0)
used_clock = CLOCK_REALTIME;
+ else if (strcmp(clockarg, "aux0") == 0)
+ used_clock = CLOCK_AUX + 0;
+ else if (strcmp(clockarg, "aux1") == 0)
+ used_clock = CLOCK_AUX + 1;
+ else if (strcmp(clockarg, "aux2") == 0)
+ used_clock = CLOCK_AUX + 2;
+ else if (strcmp(clockarg, "aux3") == 0)
+ used_clock = CLOCK_AUX + 3;
+ else if (strcmp(clockarg, "aux4") == 0)
+ used_clock = CLOCK_AUX + 4;
+ else if (strcmp(clockarg, "aux5") == 0)
+ used_clock = CLOCK_AUX + 5;
+ else if (strcmp(clockarg, "aux6") == 0)
+ used_clock = CLOCK_AUX + 6;
+ else if (strcmp(clockarg, "aux7") == 0)
+ used_clock = CLOCK_AUX + 7;
else
return 1;
--
2.53.0
next prev parent reply other threads:[~2026-04-07 6:51 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-07 6:48 [PATCH 0/6] cyclictest: Add support for auxiliary clocks Thomas Weißschuh (Schneider Electric)
2026-04-07 6:48 ` [PATCH 1/6] cyclictest: Centralize clock option parsing Thomas Weißschuh (Schneider Electric)
2026-04-07 8:27 ` Florian Bezdeka
2026-04-07 8:45 ` Thomas Weißschuh (Schneider Electric)
2026-04-15 14:46 ` John Kacur
2026-04-07 6:48 ` [PATCH 2/6] cyclictest: Test the return value of timer_create() Thomas Weißschuh (Schneider Electric)
2026-04-15 14:47 ` John Kacur
2026-04-07 6:48 ` [PATCH 3/6] cyclictest: Fix error error returns for uclibc clock_nanosleep() fallback Thomas Weißschuh (Schneider Electric)
2026-04-07 8:16 ` Florian Bezdeka
2026-04-07 8:50 ` Thomas Weißschuh (Schneider Electric)
2026-04-07 8:59 ` Florian Bezdeka
2026-04-15 14:47 ` John Kacur
2026-04-07 6:48 ` [PATCH 4/6] cyclictest: Correctly print clock_nanosleep() errors Thomas Weißschuh (Schneider Electric)
2026-04-15 14:47 ` John Kacur
2026-04-07 6:48 ` [PATCH 5/6] cyclictest: Allow symbolic clock names Thomas Weißschuh (Schneider Electric)
2026-04-15 14:48 ` John Kacur
2026-04-07 6:48 ` Thomas Weißschuh (Schneider Electric) [this message]
2026-04-15 14:48 ` [PATCH 6/6] cyclictest: Add support for auxiliary clocks John Kacur
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260407-auxclocks-v1-6-1ef80d14eb0a@linutronix.de \
--to=thomas.weissschuh@linutronix.de \
--cc=jkacur@redhat.com \
--cc=linux-rt-users@vger.kernel.org \
--cc=williams@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox