Re: [PATCH tip/core/rcu 18/45] torture: Make "--dryrun script" use same environment as normal run

From: josh
Date: Wed May 07 2014 - 17:33:39 EST


On Mon, Apr 28, 2014 at 05:25:06PM -0700, Paul E. McKenney wrote:
> From: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>
>
> In a normal torture-test run, the script inherits its environment
> variables, but this does not work when producing a script that is
> to run later. Therefore, definitions and exports are prepended to
> a dryrun script but not to a script that is run immediately. This
> commit reconciles this by placing definitions and exports at the
> beginning of the script in both cases.

Cleanup idea, not needed in this commit: This has gotten sufficiently
long to warrant a loop over a list of environment variables, or possibly
a loop over all environment variable starting with TORTURE_* .

> Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
Reviewed-by: Josh Triplett <josh@xxxxxxxxxxxxxxxx>

> ---
> tools/testing/selftests/rcutorture/bin/kvm.sh | 28 ++++++++++++---------------
> 1 file changed, 12 insertions(+), 16 deletions(-)
>
> diff --git a/tools/testing/selftests/rcutorture/bin/kvm.sh b/tools/testing/selftests/rcutorture/bin/kvm.sh
> index 8aa62a2dccb5..93a6c5a8517d 100644
> --- a/tools/testing/selftests/rcutorture/bin/kvm.sh
> +++ b/tools/testing/selftests/rcutorture/bin/kvm.sh
> @@ -241,8 +241,19 @@ END {
>
> # Generate a script to execute the tests in appropriate batches.
> cat << ___EOF___ > $T/script
> -TORTURE_SUITE="$TORTURE_SUITE"; export TORTURE_SUITE
> +CONFIGFRAG="$CONFIGFRAG"; export CONFIGFRAG
> +KVM="$KVM"; export KVM
> +KVPATH="$KVPATH"; export KVPATH
> +PATH="$PATH"; export PATH
> +TORTURE_BUILDONLY="$TORTURE_BUILDONLY"; export TORTURE_BUILDONLY
> TORTURE_DEFCONFIG="$TORTURE_DEFCONFIG"; export TORTURE_DEFCONFIG
> +TORTURE_INITRD="$TORTURE_INITRD"; export TORTURE_INITRD
> +TORTURE_KMAKE_ARG="$TORTURE_KMAKE_ARG"; export TORTURE_KMAKE_ARG
> +TORTURE_QEMU_CMD="$TORTURE_QEMU_CMD"; export TORTURE_QEMU_CMD
> +TORTURE_QEMU_INTERACTIVE="$TORTURE_QEMU_INTERACTIVE";
> + export TORTURE_QEMU_INTERACTIVE
> +TORTURE_QEMU_MAC="$TORTURE_QEMU_MAC"; export TORTURE_QEMU_MAC
> +TORTURE_SUITE="$TORTURE_SUITE"; export TORTURE_SUITE
> if ! test -e $resdir
> then
> mkdir -p "$resdir" || :
> @@ -371,21 +382,6 @@ ___EOF___
>
> if test "$dryrun" = script
> then
> - # Dump out the script, but define the environment variables that
> - # it needs to run standalone.
> - echo CONFIGFRAG="$CONFIGFRAG; export CONFIGFRAG"
> - echo KVM="$KVM; export KVM"
> - echo KVPATH="$KVPATH; export KVPATH"
> - echo PATH="$PATH; export PATH"
> - echo TORTURE_BUILDONLY="$TORTURE_BUILDONLY; export TORTURE_BUILDONLY"
> - echo TORTURE_INITRD="$TORTURE_INITRD; export TORTURE_INITRD"
> - echo TORTURE_KMAKE_ARG="$TORTURE_KMAKE_ARG; export TORTURE_KMAKE_ARG"
> - echo TORTURE_QEMU_CMD="$TORTURE_QEMU_CMD; export TORTURE_QEMU_CMD"
> - echo TORTURE_QEMU_INTERACTIVE="$TORTURE_QEMU_INTERACTIVE;
> - export TORTURE_QEMU_INTERACTIVE"
> - echo TORTURE_QEMU_MAC="$TORTURE_QEMU_MAC; export TORTURE_QEMU_MAC"
> - echo "mkdir -p "$resdir" || :"
> - echo "mkdir $resdir/$ds"
> cat $T/script
> exit 0
> elif test "$dryrun" = sched
> --
> 1.8.1.5
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/