mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@kernel.org>
To: linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org,
	linux-kselftest@vger.kernel.org
Cc: Masami Hiramatsu <mhiramat@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Shuah Khan <skhan@linuxfoundation.org>
Subject: [PATCH 1/2] tracing/selftests: Fix instance test to actually test races
Date: Thu, 29 Oct 2026 16:28:50 -0400	[thread overview]
Message-ID: <20261029203205.757392992@kernel.org> (raw)
In-Reply-To: <20261029202849.245864353@kernel.org>

From: Steven Rostedt <rostedt@goodmis.org>

The instance selftest creates and removes the "foo" instance while
enabling sched_switch event and reading its trace file. The issue is that
the read of the trace file prevents the removal of foo, and it constantly
fails to remove it. The stress test is not really stressing the situation.

Instead of running the creating and deletion in a loop as a separate
process and sleeping for one second, call it directly in a loop that forces
it to happen 10 times.  Also update the removal to keep trying until it
removes the instance, otherwise if it doesn't remove it then the next mkdir
is a nop.

Convert the reading of the trace file to use "head" instead of "cat" so it
is limited in how much it reads and add a .1 sleep in between reads. This
gives the removal of the instance time to succeed.

Fixes: 91e6f1ce86577 ("ftracetest: Add instance created, delete, read and enable event test")
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 .../ftrace/test.d/instances/instance-event.tc | 26 +++++++++----------
 1 file changed, 12 insertions(+), 14 deletions(-)

diff --git a/tools/testing/selftests/ftrace/test.d/instances/instance-event.tc b/tools/testing/selftests/ftrace/test.d/instances/instance-event.tc
index 42422e425107..b0e9d3abbf2f 100644
--- a/tools/testing/selftests/ftrace/test.d/instances/instance-event.tc
+++ b/tools/testing/selftests/ftrace/test.d/instances/instance-event.tc
@@ -25,15 +25,16 @@ if [ $result -ne 0 ]; then
 fi
 
 instance_slam() {
-        while :; do
-                mkdir foo 2> /dev/null
-                rmdir foo 2> /dev/null
-        done
+	mkdir foo 2> /dev/null
+	while ! rmdir foo; do
+		echo could not rmdir foo
+	done
 }
 
 instance_read() {
         while :; do
-                cat foo/trace 1> /dev/null 2>&1
+                head foo/trace 1> /dev/null 2>&1
+		sleep 0.1
         done
 }
 
@@ -43,26 +44,23 @@ instance_set() {
         done 2> /dev/null
 }
 
-instance_slam &
+instance_set &
 p1=$!
 echo $p1
 
-instance_set &
+instance_read &
 p2=$!
 echo $p2
 
-instance_read &
-p3=$!
-echo $p3
-
-sleep 1
+for i in `seq 10`; do
+	instance_slam
+done
 
-kill -1 $p3
 kill -1 $p2
 kill -1 $p1
 
 echo "Wait for processes to finish"
-wait $p1 $p2 $p3
+wait $p1 $p2
 echo "all processes finished, wait for cleanup"
 sleep 1
 
-- 
2.53.0

  reply	other threads:[~2026-10-29 20:32 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-29 20:28 [PATCH 0/2] testing/selftests: Have instance test stress instances more Steven Rostedt
2026-10-29 20:28 ` Steven Rostedt [this message]
2026-10-30  1:01   ` [PATCH 1/2] tracing/selftests: Fix instance test to actually test races Masami Hiramatsu (Google)
2026-10-30  1:20     ` Steven Rostedt
2026-10-29 20:28 ` [PATCH 2/2] tracing/selftests: Add reading all instance files to instance test Steven Rostedt
2026-10-30  1:24   ` Masami Hiramatsu (Google)

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=20261029203205.757392992@kernel.org \
    --to=rostedt@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-trace-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=mhiramat@kernel.org \
    --cc=skhan@linuxfoundation.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®