Skip to content

Commit

Permalink
tracing: selftests: Add testing a user string to filters
Browse files Browse the repository at this point in the history
Running the following commands was broken:

  # cd /sys/kernel/tracing
  # echo "filename.ustring ~ \"/proc*\"" > events/syscalls/sys_enter_openat/filter
  # echo 1 > events/syscalls/sys_enter_openat/enable
  # ls /proc/$$/maps
  # cat trace

And would produce nothing when it should have produced something like:

      ls-1192    [007] .....  8169.828333: sys_openat(dfd: ffffffffffffff9c, filename: 7efc18359904, flags: 80000, mode: 0)

Add a test to check this case so that it will be caught if it breaks
again.

Link: https://lore.kernel.org/linux-trace-kernel/20250417183003.505835fb@gandalf.local.home/

Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Shuah Khan <skhan@linuxfoundation.org>
Link: https://lore.kernel.org/20250418101208.38dc81f5@gandalf.local.home
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
  • Loading branch information
Steven Rostedt committed Apr 18, 2025
1 parent a8c5b0e commit d481ee3
Showing 1 changed file with 20 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,26 @@ if [ $misscnt -gt 0 ]; then
exit_fail
fi

# Check strings too
if [ -f events/syscalls/sys_enter_openat/filter ]; then
DIRNAME=`basename $TMPDIR`
echo "filename.ustring ~ \"*$DIRNAME*\"" > events/syscalls/sys_enter_openat/filter
echo 1 > events/syscalls/sys_enter_openat/enable
echo 1 > tracing_on
ls /bin/sh
nocnt=`grep openat trace | wc -l`
ls $TMPDIR
echo 0 > tracing_on
hitcnt=`grep openat trace | wc -l`;
echo 0 > events/syscalls/sys_enter_openat/enable
if [ $nocnt -gt 0 ]; then
exit_fail
fi
if [ $hitcnt -eq 0 ]; then
exit_fail
fi
fi

reset_events_filter

exit 0

0 comments on commit d481ee3

Please sign in to comment.