Re: [patch 05/10] selftests/rseq: Skip tests if time slice extensions are not available

Dmitry Vyukov
2026-04-29T09:34:59Z

On Wed, 29 Apr 2026 at 01:34, Thomas Gleixner <tglx@kernel.org> wrote:
>
> Don't fail, skip the test if the extensions are not enabled at compile or
> runtime.
>
> Fixes: 830969e7821a ("selftests/rseq: Implement time slice extension test")
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> Cc: stable@vger.kernel.org

Reviewed-by: Dmitry Vyukov <dvyukov@google.com>

> ---
> tools/testing/selftests/rseq/slice_test.c | 12 +++++++-----
> 1 file changed, 7 insertions(+), 5 deletions(-)
>
> --- a/tools/testing/selftests/rseq/slice_test.c
> +++ b/tools/testing/selftests/rseq/slice_test.c
> @@ -124,6 +124,13 @@ FIXTURE_SETUP(slice_ext)
> {
> cpu_set_t affinity;
>
> + if (rseq_register_current_thread())
> + SKIP(return, "RSEQ not supported\n");
> +
> + if (prctl(PR_RSEQ_SLICE_EXTENSION, PR_RSEQ_SLICE_EXTENSION_SET,
> + PR_RSEQ_SLICE_EXT_ENABLE, 0, 0))
> + SKIP(return, "Time slice extension not supported\n");
> +
> ASSERT_EQ(sched_getaffinity(0, sizeof(affinity), &affinity), 0);
>
> /* Pin it on a single CPU. Avoid CPU 0 */
> @@ -137,11 +144,6 @@ FIXTURE_SETUP(slice_ext)
> break;
> }
>
> - ASSERT_EQ(rseq_register_current_thread(), 0);
> -
> - ASSERT_EQ(prctl(PR_RSEQ_SLICE_EXTENSION, PR_RSEQ_SLICE_EXTENSION_SET,
> - PR_RSEQ_SLICE_EXT_ENABLE, 0, 0), 0);
> -
> self->noise_params.noise_nsecs = variant->noise_nsecs;
> self->noise_params.sleep_nsecs = variant->sleep_nsecs;
> self->noise_params.run = 1;
>