From: Zorro Lang <zlang@kernel.org>
To: "Darrick J. Wong" <djwong@kernel.org>
Cc: Zorro Lang <zlang@redhat.com>, fstests@vger.kernel.org
Subject: Re: [PATCH] fstests: fix _require_debugfs and call it properly
Date: Fri, 10 May 2024 11:30:35 +0800 [thread overview]
Message-ID: <20240510033035.akqao4dc3z3jrovr@dell-per750-06-vm-08.rhts.eng.pek2.redhat.com> (raw)
In-Reply-To: <20240510023146.GI2049409@frogsfrogsfrogs>
On Thu, May 09, 2024 at 07:31:46PM -0700, Darrick J. Wong wrote:
> On Fri, May 10, 2024 at 09:37:26AM +0800, Zorro Lang wrote:
> > On Tue, Apr 30, 2024 at 02:58:57AM +0800, Zorro Lang wrote:
> > > On Mon, Apr 29, 2024 at 09:03:56AM -0700, Darrick J. Wong wrote:
> > > > On Mon, Apr 29, 2024 at 02:09:06PM +0800, Zorro Lang wrote:
> > > > > The old _require_debugfs helper doesn't work now, fix it to check
> > > > > a system supports debugfs. And then call this helper in cases which
> > > > > need $DEBUGFS_MNT.
> > > > >
> > > > > Signed-off-by: Zorro Lang <zlang@kernel.org>
> > > > > ---
> > > > > common/rc | 10 ++++++++--
> > > > > tests/btrfs/150 | 1 +
> > > > > tests/ceph/001 | 2 +-
> > > > > tests/xfs/499 | 1 +
> > > > > 4 files changed, 11 insertions(+), 3 deletions(-)
> > > > >
> > > > > diff --git a/common/rc b/common/rc
> > > > > index 56f1afb6..6f0bdf60 100644
> > > > > --- a/common/rc
> > > > > +++ b/common/rc
> > > > > @@ -2978,8 +2978,14 @@ _require_sparse_files()
> > > > >
> > > > > _require_debugfs()
> > > > > {
> > > > > - #boot_params always present in debugfs
> > > > > - [ -d "$DEBUGFS_MNT/boot_params" ] || _notrun "Debugfs not mounted"
> > > > > + local type
> > > > > +
> > > > > + if [ -d "$DEBUGFS_MNT" ];then
> > > > > + type=$(findmnt -rncv -T $DEBUGFS_MNT -S debugfs -o FSTYPE)
> > > > > + [ "$type" = "debugfs" ] && return 0
> > > > > + fi
> > > > > +
> > > > > + _notrun "Cannot find debugfs on $DEBUGFS_MNT"
> > > > > }
> > > > >
> > > > > #
> > > > > diff --git a/tests/btrfs/150 b/tests/btrfs/150
> > > > > index a02bdafc..fd386d92 100755
> > > > > --- a/tests/btrfs/150
> > > > > +++ b/tests/btrfs/150
> > > > > @@ -17,6 +17,7 @@ _begin_fstest auto quick dangerous read_repair compress
> > > > > . ./common/fail_make_request
> > > > >
> > > > > _supported_fs btrfs
> > > > > +_require_debugfs
> > > > > _require_scratch
> > > > > _require_fail_make_request
> > > > > _require_scratch_dev_pool 2
> > > > > diff --git a/tests/ceph/001 b/tests/ceph/001
> > > > > index 060c4c45..79a5f58a 100755
> > > > > --- a/tests/ceph/001
> > > > > +++ b/tests/ceph/001
> > > > > @@ -20,7 +20,7 @@ _begin_fstest auto quick copy_range
> > > > >
> > > > > # real QA test starts here
> > > > > _supported_fs ceph
> > > > > -
> > > > > +_require_debugfs
> > > > > _require_xfs_io_command "copy_range"
> > > > > _exclude_test_mount_option "test_dummy_encryption"
> > > > > _require_attrs
> > > > > diff --git a/tests/xfs/499 b/tests/xfs/499
> > > > > index 9672f95d..6421cc4b 100755
> > > > > --- a/tests/xfs/499
> > > > > +++ b/tests/xfs/499
> > > > > @@ -18,6 +18,7 @@ _register_cleanup "_cleanup" BUS
> > > > > # real QA test starts here
> > > > > _supported_fs xfs
> > > > > _require_command "$CC_PROG" "cc"
> > > > > +_require_debugfs
> > > >
> > > > This test doesn't mess around with debugfs per se; it actually wants
> > > > tracefs. Perhaps this should be _require_ftrace instead?
> >
> > Oh, I just found you've created a _require_ftrace helper in common/tracing:
> >
> > FTRACE_INSTANCES_DIR="/sys/kernel/debug/tracing/instances/"
> >
> > _require_ftrace() {
> > test -d "$FTRACE_INSTANCES_DIR" || \
> > _notrun "kernel does not support ftrace"
> > }
> >
> > Newer kernel has /sys/kernel/tracing/, to avoid the dependence of debugfs.
>
> Ah, I didn't realize that! I wonder how long that's been in place...
Looks like it happened in 2015, by cc31004a4aa7 ("tracefs: Add directory
/sys/kernel/tracing"):
https://lwn.net/Articles/630526/
>
> > But there's still /sys/kernel/debug/tracing/, so I'm wondering
> > if we should try to use /sys/kernel/debug/tracing at first?
> >
> > For example:
> >
> > _require_ftrace() {
> > if [ -d /sys/kernel/tracing/instances/ ];then
> > FTRACE_DIR="/sys/kernel/tracing"
> > FTRACE_INSTANCES_DIR="/sys/kernel/tracing/instances"
> > elif [ -d /sys/kernel/debug/tracing/instances/ ];then
> > FTRACE_DIR="/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
> > }
>
> Yes.
Oh, I found you set FTRACE_DIR="$FTRACE_INSTANCES_DIR/fstests.$seq". If we
don't need the root path of tracefs, I can just set FTRACE_INSTANCES_DIR.
Thanks,
Zorro
>
> --D
>
> > Thanks,
> > Zorro
> >
> > >
> > > Sure, but if it depends tracefs only, should we use /sys/kernel/debug/tracing or
> > > /sys/kernel/tracing ? If we use /sys/kernel/debug/tracing, is the debugfs needed
> > > at first?
> > >
> > > Thanks,
> > > Zorro
> > >
> > > >
> > > > --D
> > > >
> > > > > cprog=$tmp.ftrace.c
> > > > > oprog=$tmp.ftrace
> > > > > --
> > > > > 2.44.0
> > > > >
> > > > >
> > > >
> >
>
next prev parent reply other threads:[~2024-05-10 3:30 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-29 6:09 [PATCH] fstests: fix _require_debugfs and call it properly Zorro Lang
2024-04-29 16:03 ` Darrick J. Wong
2024-04-29 18:58 ` Zorro Lang
2024-05-10 1:37 ` Zorro Lang
2024-05-10 2:31 ` Darrick J. Wong
2024-05-10 3:30 ` Zorro Lang [this message]
2024-06-05 4:27 ` Luis Chamberlain
2024-06-05 14:36 ` Darrick J. Wong
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=20240510033035.akqao4dc3z3jrovr@dell-per750-06-vm-08.rhts.eng.pek2.redhat.com \
--to=zlang@kernel.org \
--cc=djwong@kernel.org \
--cc=fstests@vger.kernel.org \
--cc=zlang@redhat.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).