From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
To: Gabriele Monaco <gmonaco@redhat.com>,
Peter Zijlstra <peterz@infradead.org>,
"Paul E. McKenney" <paulmck@kernel.org>,
Shuah Khan <shuah@kernel.org>,
linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org
Subject: Re: [PATCH v5 3/3] rseq/selftests: Add test for mm_cid compaction
Date: Mon, 10 Feb 2025 15:53:12 +0100 [thread overview]
Message-ID: <da68dc94-9aa8-4ee1-b0f9-e28eb5c7da56@efficios.com> (raw)
In-Reply-To: <20250210075703.79125-4-gmonaco@redhat.com>
On 2025-02-10 08:57, Gabriele Monaco wrote:
> A task in the kernel (task_mm_cid_work) runs somewhat periodically to
> compact the mm_cid for each process. Add a test to validate that it runs
> correctly and timely.
>
> The test spawns 1 thread pinned to each CPU, then each thread, including
> the main one, runs in short bursts for some time. During this period, the
> mm_cids should be spanning all numbers between 0 and nproc.
>
> At the end of this phase, a thread with high enough mm_cid (>= nproc/2)
> is selected to be the new leader, all other threads terminate.
>
> After some time, the only running thread should see 0 as mm_cid, if that
> doesn't happen, the compaction mechanism didn't work and the test fails.
>
> The test never fails if only 1 core is available, in which case, we
> cannot test anything as the only available mm_cid is 0.
>
> To: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Reviewed-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
tiny nit below:
> + usleep(RUNNER_PERIOD);
> + curr_mm_cid = rseq_current_mm_cid();
> + /*
> + * We select one thread with high enough mm_cid to be the new leader
Missing punctuation here (...new leader. All other...)
> + * all other threads (including the main thread) will terminate.
> + * After some time, the mm_cid of the only remaining thread should
> + * converge to 0, if not, the test fails.
> + */
Thanks,
Mathieu
--
Mathieu Desnoyers
EfficiOS Inc.
https://www.efficios.com
next prev parent reply other threads:[~2025-02-10 14:53 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20250210075703.79125-1-gmonaco@redhat.com>
2025-02-10 7:57 ` [PATCH v5 1/3] sched: Compact RSEQ concurrency IDs with reduced threads and affinity Gabriele Monaco
2025-02-10 7:57 ` [PATCH v5 2/3] sched: Move task_mm_cid_work to mm delayed work Gabriele Monaco
2025-02-10 7:57 ` [PATCH v5 3/3] rseq/selftests: Add test for mm_cid compaction Gabriele Monaco
2025-02-10 14:53 ` Mathieu Desnoyers [this message]
2025-02-10 15:25 ` Gabriele Monaco
2025-02-18 23:45 ` Shuah Khan
2025-02-19 10:28 ` Gabriele Monaco
2025-02-10 14:56 ` [PATCH v5 0/3] sched: Restructure task_mm_cid_work for predictability Mathieu Desnoyers
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=da68dc94-9aa8-4ee1-b0f9-e28eb5c7da56@efficios.com \
--to=mathieu.desnoyers@efficios.com \
--cc=gmonaco@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=paulmck@kernel.org \
--cc=peterz@infradead.org \
--cc=shuah@kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.