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

From: Paul E. McKenney
Date: Wed May 07 2014 - 20:07:55 EST


On Wed, May 07, 2014 at 02:33:27PM -0700, josh@xxxxxxxxxxxxxxxx wrote:
> 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_* .

Makes sense on both counts, thank you! Give or take quoting, anyway! ;-)

Thanx, Paul

> > 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/