Re: [PATCH] selftests/run_kselftest.sh: Use readlink if realpath is not available

From: Yosry Ahmed
Date: Sat Mar 29 2025 - 15:49:19 EST


March 28, 2025 at 10:05 PM, "Shuah Khan" <skhan@xxxxxxxxxxxxxxxxxxx> wrote:
>
> On 3/18/25 10:05, Yosry Ahmed wrote:
>
> > 'realpath' is not always available, fallback to 'readlink -f' if is not
> > available. They seem to work equally well in this context.
>
> Can you add more specifics on "realpath" is not always available,"
> No issues with the patch itself. I would like to know the cases
> where "realpath" command is missing.

Not all distros have realpath. In my case, it was an internal distro we use on some test machines, so I can't really share much details about it.

Thanks.

> >
> > Signed-off-by: Yosry Ahmed <yosry.ahmed@xxxxxxxxx>
> > ---
> > tools/testing/selftests/run_kselftest.sh | 9 ++++++++-
> > 1 file changed, 8 insertions(+), 1 deletion(-)
> > diff --git a/tools/testing/selftests/run_kselftest.sh b/tools/testing/selftests/run_kselftest.sh
> > index 50e03eefe7ac7..0443beacf3621 100755
> > --- a/tools/testing/selftests/run_kselftest.sh
> > +++ b/tools/testing/selftests/run_kselftest.sh
> > @@ -3,7 +3,14 @@
> > #
> > # Run installed kselftest tests.
> > #
> > -BASE_DIR=$(realpath $(dirname $0))
> > +
> > +# Fallback to readlink if realpath is not available
> > +if which realpath > /dev/null; then
> > + BASE_DIR=$(realpath $(dirname $0))
> > +else
> > + BASE_DIR=$(readlink -f $(dirname $0))
> > +fi
> > +
> > cd $BASE_DIR
> > TESTS="$BASE_DIR"/kselftest-list.txt
> > if [ ! -r "$TESTS" ] ; then
>
> thanks,
>
> -- Shuah
>