From: Steven Rostedt <rostedt@goodmis.org>
To: Sven Schnelle <svens@linux.ibm.com>
Cc: Mete Durlu <meted@linux.ibm.com>,
Masami Hiramatsu <mhiramat@kernel.org>,
Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org
Subject: Re: [PATCH] tracing: use ring_buffer_record_is_set_on() in tracer_tracing_is_on()
Date: Wed, 7 Feb 2024 10:47:03 -0500 [thread overview]
Message-ID: <20240207104703.071ee985@rorschach.local.home> (raw)
In-Reply-To: <yt9dzfwch00u.fsf@linux.ibm.com>
On Wed, 07 Feb 2024 14:33:21 +0100
Sven Schnelle <svens@linux.ibm.com> wrote:
> My assumption without reading the code is that something like this
> happens:
>
> CPU0 CPU1
> [ringbuffer enabled]
> ring_buffer_write()
> if (atomic_read(&buffer->record_disabled))
> goto out;
> echo 0 > tracing_on
> record_disabled |= RB_BUFFER_OFF
> csum1=`md5sum trace`
Note, the CPU1 is performing with preemption disabled, so for this to
happen, something really bad happened on CPU0 to delay preempt disabled
section so long to allow the trace to be read. Perhaps we should have
the return of the echo 0 > tracing_on require a synchronize_rcu() to
make sure all ring buffers see it disabled before it returns.
But unless your system is doing something really stressed to cause the
preempt disabled section to take so long, I highly doubt this was the
race.
-- Steve
> [adds trace entry to ring buffer,
> overwriting savedcmd_lines entry because
> it thinks ring buffer is enabled]
> csum2=`md5sum trace`
next prev parent reply other threads:[~2024-02-07 15:47 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-05 6:53 Sven Schnelle
2024-02-05 12:55 ` Steven Rostedt
2024-02-05 13:16 ` Sven Schnelle
2024-02-05 14:23 ` Steven Rostedt
2024-02-05 15:09 ` Sven Schnelle
2024-02-06 6:32 ` Sven Schnelle
2024-02-06 8:48 ` Sven Schnelle
2024-02-06 11:01 ` Steven Rostedt
2024-02-07 5:50 ` Sven Schnelle
2024-02-07 11:09 ` Steven Rostedt
2024-02-07 12:07 ` Mete Durlu
2024-02-07 12:28 ` Steven Rostedt
2024-02-07 13:33 ` Sven Schnelle
2024-02-07 15:47 ` Steven Rostedt [this message]
2024-02-08 10:25 ` Mete Durlu
2024-02-12 18:53 ` Steven Rostedt
2024-02-12 22:54 ` Mete Durlu
2024-02-12 23:12 ` Steven Rostedt
2024-02-06 7:05 ` Mete Durlu
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=20240207104703.071ee985@rorschach.local.home \
--to=rostedt@goodmis.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=mathieu.desnoyers@efficios.com \
--cc=meted@linux.ibm.com \
--cc=mhiramat@kernel.org \
--cc=svens@linux.ibm.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
Powered by JetHome