To avoid the dependence of debugfs, tracefs is mounted on another place -- /sys/kernel/tracing now. But for the compatibility, the /sys/kernel/debug/tracing is still there. So change _require_ftrace helper, try to use the new /sys/kernel/tracing path at first, or fallback to the old one if it's not supported. xfs/499 uses ftrace, so call _require_ftrace in it. Signed-off-by: Zorro Lang <zlang@xxxxxxxxxx> --- common/tracing | 13 +++++++++---- tests/xfs/499 | 6 +++--- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/common/tracing b/common/tracing index b3051c27..8613d044 100644 --- a/common/tracing +++ b/common/tracing @@ -4,11 +4,16 @@ # # Routines for dealing with ftrace (or any other tracing). -FTRACE_INSTANCES_DIR="/sys/kernel/debug/tracing/instances/" - _require_ftrace() { - test -d "$FTRACE_INSTANCES_DIR" || \ - _notrun "kernel does not support ftrace" + if [ -d /sys/kernel/tracing/instances/ ];then + FTRACE_ROOT="/sys/kernel/tracing" + FTRACE_INSTANCES_DIR="/sys/kernel/tracing/instances" + elif [ -d /sys/kernel/debug/tracing/instances/ ];then + FTRACE_ROOT="/sys/kernel/debug/tracing" + FTRACE_INSTANCES_DIR="/sys/kernel/debug/tracing/instances" + else + _notrun "The ftrace is not supported, or tracefs is not mounted" + fi } _ftrace_cleanup() { diff --git a/tests/xfs/499 b/tests/xfs/499 index 9672f95d..883415dc 100755 --- a/tests/xfs/499 +++ b/tests/xfs/499 @@ -14,18 +14,18 @@ _begin_fstest auto quick _register_cleanup "_cleanup" BUS # Import common functions. +. ./common/tracing # real QA test starts here _supported_fs xfs +_require_ftrace _require_command "$CC_PROG" "cc" cprog=$tmp.ftrace.c oprog=$tmp.ftrace sedprog=$tmp.ftrace.sed -ftrace_dir=$DEBUGFS_MNT/tracing/events/xfs - -test -d $ftrace_dir || _notrun "ftrace not enabled" +ftrace_dir=$FTRACE_ROOT/events/xfs # The second argument to __print_symbolic is stringified in the tracepoint's # fmt file, so we look for "{ NUM, STRING }" and try to separate each of them -- 2.44.0