Re: [PATCH v4] kselftests/damon: add support for cases where debugfs cannot be read
From: Gautam Menghani
Date: Mon Jun 27 2022 - 23:37:42 EST
Cc'ing everyone as I forgot to group reply before. Also, I have included the
example outputs in this reply.
On Tue, Jun 28, 2022 at 12:12:15AM +0530, Gautam Menghani wrote:
> On Mon, Jun 27, 2022 at 11:00:18AM -0600, Shuah Khan wrote:
> > On 6/25/22 2:03 PM, SeongJae Park wrote:
> > > Hi Gautam,
> > >
> > > On Sun, 26 Jun 2022 01:22:45 +0530 Gautam <gautammenghani201@xxxxxxxxx> wrote:
> > >
> > > > The kernel is in lockdown mode when secureboot is enabled and hence
> > > > debugfs cannot be used. Add support for this and other general cases
> > > > where debugfs cannot be read and communicate the same to the user before
> > > > running tests.
> > > >
> > > > Signed-off-by: Gautam <gautammenghani201@xxxxxxxxx>
> > >
> > > Reviewed-by: SeongJae Park <sj@xxxxxxxxxx>
> > >
> > >
> > > Thanks,
> > > SJ
> > >
> > > > ---
> > > > Changes in v2:
> > > > 1. Modify the error message to account for general cases.
> > > > 2. Change the return code so that the test is skipped.
> > > >
> > > > Changes in v3:
> > > > 1. Change the name of variable holding the error message.
> > > >
> > > > Changes in v4:
> > > > 1. Correct the mode of the source file.
> > > >
> > > > tools/testing/selftests/damon/_chk_dependency.sh | 10 ++++++++++
> > > > 1 file changed, 10 insertions(+)
> > > >
> > > > diff --git a/tools/testing/selftests/damon/_chk_dependency.sh b/tools/testing/selftests/damon/_chk_dependency.sh
> > > > index 0189db81550b..0328ac0b5a5e 100644
> > > > --- a/tools/testing/selftests/damon/_chk_dependency.sh
> > > > +++ b/tools/testing/selftests/damon/_chk_dependency.sh
> > > > @@ -26,3 +26,13 @@ do
> > > > exit 1
> > > > fi
> > > > done
> > > > +
> > > > +permission_error="Operation not permitted"
> > > > +for f in attrs target_ids monitor_on
> > > > +do
> > > > + status=$( cat "$DBGFS/$f" 2>&1 )
> > > > + if [ "${status#*$permission_error}" != "$status" ]; then
> > > > + echo "Permission for reading $DBGFS/$f denied; maybe secureboot enabled?"
> >
> > btw - does this run as a regular user or does it need root privilege?
> > If so add a test for that and skip with a message.
>
> Yes this condition is reachable only with root user. If damon tests are run
> as regular user, the root check condition already skips the tests.
>
> Tests output as regular user:
> +TAP version 13
> +1..6
> +# selftests: damon: debugfs_attrs.sh
> +# Run as root
> +ok 1 selftests: damon: debugfs_attrs.sh # SKIP
> +# selftests: damon: debugfs_schemes.sh
> +# Run as root
>
> Tests output as root user:
> +TAP version 13
> +1..6
> +# selftests: damon: debugfs_attrs.sh
> +# Permission for reading /sys/kernel/debug/damon/attrs denied; maybe secureboot enabled?
> +ok 1 selftests: damon: debugfs_attrs.sh # SKIP
> +# selftests: damon: debugfs_schemes.sh
> +# Permission for reading /sys/kernel/debug/damon/attrs denied; maybe secureboot enabled?
>
> Is any change needed in this patch?
>
> > > > + exit $ksft_skip
> > > > + fi
> > > > +done
> > > > --
> > > > 2.36.1
> > >
> > thanks,
> > -- Shuah