Re: [PATCH v2 15/18] rtla: Make stop_tracing variable volatile
From: Wander Lairson Costa
Date: Wed Jan 07 2026 - 08:24:59 EST
On Tue, Jan 6, 2026 at 1:05 PM Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>
> On Tue, 6 Jan 2026 08:49:51 -0300
> Wander Lairson Costa <wander@xxxxxxxxxx> wrote:
>
> > Add the volatile qualifier to stop_tracing in both common.c and
> > common.h to ensure all accesses to this variable bypass compiler
> > optimizations and read directly from memory. This guarantees that
> > when the signal handler sets stop_tracing, the change is immediately
> > visible to the main program loop, preventing potential hangs or
> > delayed shutdown when termination signals are received.
>
> In the kernel, this is handled via the READ_ONCE() macro. Perhaps rtla
> should implement that too.
>
I considered that, but, in this use case, I saw no point because it
didn't bring any advantage and volatile was simpler.
Furthermore, as Crystal pointed out, using volatile for variables
shared with signals is a pretty standard practice.
> -- Steve
>