Re: [PATCH v1] perf test workload thloop: Make count increments atomic

From: Ian Rogers
Date: Thu Jan 19 2023 - 11:09:50 EST


On Sat, Jan 14, 2023 at 1:53 PM Ian Rogers <irogers@xxxxxxxxxx> wrote:
>
> The count variable is incremented by multiple threads, doing so
> without an atomic operation causes thread sanitizer warnings. Switch
> to using relaxed atomics.
>
> Signed-off-by: Ian Rogers <irogers@xxxxxxxxxx>
> ---
> tools/perf/tests/workloads/thloop.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/tests/workloads/thloop.c b/tools/perf/tests/workloads/thloop.c
> index 29193b75717e..af05269c2eb8 100644
> --- a/tools/perf/tests/workloads/thloop.c
> +++ b/tools/perf/tests/workloads/thloop.c
> @@ -20,7 +20,7 @@ static void sighandler(int sig __maybe_unused)
> noinline void test_loop(void)
> {
> while (!done)
> - count++;
> + __atomic_fetch_add(&count, 1, __ATOMIC_RELAXED);

Ping. No functional change, cleans up a lot of thread sanitizer
issues, the use of __atomic_fetch_add is consistent with other files.

Thanks,
Ian

> }
>
> static void *thfunc(void *arg)
> --
> 2.39.0.314.g84b9a713c41-goog
>