2019-10-04 08:14:43

by Masami Hiramatsu

[permalink] [raw]
Subject: [BUGFIX PATCH] selftests: Use real temporary working directory for archiving

Use real temporary working directory for generating kselftest
archive.

tools/testing/selftests/kselftest directory has been used for
the temporary working directory for making a tar archive from
gen_kselftest_tar.sh, and it removes the directory for cleanup.

However, since the kselftest directory became a part of the
repository, it must not be used as a working dir.

Introduce mktemp to prepare a temporary working directory
for archiving kselftests.

Signed-off-by: Masami Hiramatsu <[email protected]>
---
tools/testing/selftests/gen_kselftest_tar.sh | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/tools/testing/selftests/gen_kselftest_tar.sh b/tools/testing/selftests/gen_kselftest_tar.sh
index a27e2eec3586..eba1e9987ffc 100755
--- a/tools/testing/selftests/gen_kselftest_tar.sh
+++ b/tools/testing/selftests/gen_kselftest_tar.sh
@@ -38,16 +38,16 @@ main()
esac
fi

- install_dir=./kselftest
+ tmpdir=`mktemp -d ./install-XXXXXX` || exit 1

# Run install using INSTALL_KSFT_PATH override to generate install
# directory
-./kselftest_install.sh
-tar $copts kselftest${ext} $install_dir
+./kselftest_install.sh $tmpdir
+tar $copts kselftest${ext} -C $tmpdir kselftest
echo "Kselftest archive kselftest${ext} created!"

# clean up install directory
-rm -rf kselftest
+rm -rf $tmpdir
}

main "$@"


2019-10-04 16:37:32

by Jassi Brar

[permalink] [raw]
Subject: Re: [BUGFIX PATCH] selftests: Use real temporary working directory for archiving

On Fri, 4 Oct 2019 at 00:13, Masami Hiramatsu <[email protected]> wrote:
>
> Use real temporary working directory for generating kselftest
> archive.
>
> tools/testing/selftests/kselftest directory has been used for
> the temporary working directory for making a tar archive from
> gen_kselftest_tar.sh, and it removes the directory for cleanup.
>
> However, since the kselftest directory became a part of the
> repository, it must not be used as a working dir.
>
> Introduce mktemp to prepare a temporary working directory
> for archiving kselftests.
>
> Signed-off-by: Masami Hiramatsu <[email protected]>
> ---
> tools/testing/selftests/gen_kselftest_tar.sh | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/tools/testing/selftests/gen_kselftest_tar.sh b/tools/testing/selftests/gen_kselftest_tar.sh
> index a27e2eec3586..eba1e9987ffc 100755
> --- a/tools/testing/selftests/gen_kselftest_tar.sh
> +++ b/tools/testing/selftests/gen_kselftest_tar.sh
> @@ -38,16 +38,16 @@ main()
> esac
> fi
>
> - install_dir=./kselftest
> + tmpdir=`mktemp -d ./install-XXXXXX` || exit 1
>
> # Run install using INSTALL_KSFT_PATH override to generate install
> # directory
> -./kselftest_install.sh
> -tar $copts kselftest${ext} $install_dir
> +./kselftest_install.sh $tmpdir
> +tar $copts kselftest${ext} -C $tmpdir kselftest
> echo "Kselftest archive kselftest${ext} created!"
>
> # clean up install directory
> -rm -rf kselftest
> +rm -rf $tmpdir
> }
>
> main "$@"
>
FWIW, Acked-by: Jassi Brar <[email protected]>

--
Linaro.org │ Open source software for ARM SoCs | Follow Linaro
http://facebook.com/pages/Linaro/155974581091106 -
http://twitter.com/#!/linaroorg - http://linaro.org/linaro-blog

2019-10-08 23:42:48

by Bird, Tim

[permalink] [raw]
Subject: RE: [BUGFIX PATCH] selftests: Use real temporary working directory for archiving



> -----Original Message-----
> From: Masami Hiramatsu on Thursday, October 03, 2019 7:13 PM
>
> Use real temporary working directory for generating kselftest
> archive.
>
> tools/testing/selftests/kselftest directory has been used for
> the temporary working directory for making a tar archive from
> gen_kselftest_tar.sh, and it removes the directory for cleanup.
>
> However, since the kselftest directory became a part of the
> repository, it must not be used as a working dir.

I'm not objecting to the test, but I would like to understand this
point better. Under normal circumstances (i.e. when not using O= or KBUILD_OUTPUT)
the rest of the kernel directory structure holds generated files.
What is the issue with using kselftest to hold generated files?
-- Tim

>
> Introduce mktemp to prepare a temporary working directory
> for archiving kselftests.
>
> Signed-off-by: Masami Hiramatsu <[email protected]>
> ---
> tools/testing/selftests/gen_kselftest_tar.sh | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/tools/testing/selftests/gen_kselftest_tar.sh
> b/tools/testing/selftests/gen_kselftest_tar.sh
> index a27e2eec3586..eba1e9987ffc 100755
> --- a/tools/testing/selftests/gen_kselftest_tar.sh
> +++ b/tools/testing/selftests/gen_kselftest_tar.sh
> @@ -38,16 +38,16 @@ main()
> esac
> fi
>
> - install_dir=./kselftest
> + tmpdir=`mktemp -d ./install-XXXXXX` || exit 1
>
> # Run install using INSTALL_KSFT_PATH override to generate install
> # directory
> -./kselftest_install.sh
> -tar $copts kselftest${ext} $install_dir
> +./kselftest_install.sh $tmpdir
> +tar $copts kselftest${ext} -C $tmpdir kselftest
> echo "Kselftest archive kselftest${ext} created!"
>
> # clean up install directory
> -rm -rf kselftest
> +rm -rf $tmpdir
> }
>
> main "$@"

2019-10-09 02:48:29

by Masami Hiramatsu

[permalink] [raw]
Subject: Re: [BUGFIX PATCH] selftests: Use real temporary working directory for archiving

On Tue, 8 Oct 2019 23:39:40 +0000
<[email protected]> wrote:

>
>
> > -----Original Message-----
> > From: Masami Hiramatsu on Thursday, October 03, 2019 7:13 PM
> >
> > Use real temporary working directory for generating kselftest
> > archive.
> >
> > tools/testing/selftests/kselftest directory has been used for
> > the temporary working directory for making a tar archive from
> > gen_kselftest_tar.sh, and it removes the directory for cleanup.
> >
> > However, since the kselftest directory became a part of the
> > repository, it must not be used as a working dir.
>
> I'm not objecting to the test, but I would like to understand this
> point better. Under normal circumstances (i.e. when not using O= or KBUILD_OUTPUT)
> the rest of the kernel directory structure holds generated files.
> What is the issue with using kselftest to hold generated files?

OK, after running ./gen_kselftest_tar.sh in tools/testing/selftests,
I found there is no tools/testing/selftests/kselftest was there.
Actually, this was found when I searched "runner.sh" on the tree
after building kselftest.tar.gz. I couldn't find it and realized that
the gen_kselftest_tar.sh removed kselftest directory.

This is not happen if you run gen_kselftest_tar.sh.

Thank you,

> -- Tim
>
> >
> > Introduce mktemp to prepare a temporary working directory
> > for archiving kselftests.
> >
> > Signed-off-by: Masami Hiramatsu <[email protected]>
> > ---
> > tools/testing/selftests/gen_kselftest_tar.sh | 8 ++++----
> > 1 file changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/tools/testing/selftests/gen_kselftest_tar.sh
> > b/tools/testing/selftests/gen_kselftest_tar.sh
> > index a27e2eec3586..eba1e9987ffc 100755
> > --- a/tools/testing/selftests/gen_kselftest_tar.sh
> > +++ b/tools/testing/selftests/gen_kselftest_tar.sh
> > @@ -38,16 +38,16 @@ main()
> > esac
> > fi
> >
> > - install_dir=./kselftest
> > + tmpdir=`mktemp -d ./install-XXXXXX` || exit 1
> >
> > # Run install using INSTALL_KSFT_PATH override to generate install
> > # directory
> > -./kselftest_install.sh
> > -tar $copts kselftest${ext} $install_dir
> > +./kselftest_install.sh $tmpdir
> > +tar $copts kselftest${ext} -C $tmpdir kselftest
> > echo "Kselftest archive kselftest${ext} created!"
> >
> > # clean up install directory
> > -rm -rf kselftest
> > +rm -rf $tmpdir
> > }
> >
> > main "$@"
>


--
Masami Hiramatsu <[email protected]>