On Fri, Jul 11, 2014 at 7:23 PM, <j...@joshtriplett.org> wrote: > On Fri, Jul 11, 2014 at 05:31:27PM -0400, Pranith Kumar wrote: >> Some of the scripts encode a default /bin/sh shell. On systems which use >> dash as >> default shell, these scripts fail as they are bash scripts. I encountered >> this >> while testing the sprintf() changes on a Debian system where dash is the >> default >> shell. >> >> This commit changes all such uses to use bash explicitly. > > Good catch. > > Since these all have #! lines, can you please set the executable bit on > any that don't have it set (looks like just config2frag.sh and kvm.sh), > and then change the Usage lines to drop the shell entirely and just > invoke the program directly?
OK. I will send that as a separate patch. > >> Signed-off-by: Pranith Kumar <bobby.pr...@gmail.com> > > With the above changed (perhaps in a separate patch): > Reviewed-by: Josh Triplett <j...@joshtriplett.org> > >> tools/testing/selftests/rcutorture/bin/config2frag.sh | 4 ++-- >> tools/testing/selftests/rcutorture/bin/configcheck.sh | 4 ++-- >> tools/testing/selftests/rcutorture/bin/configinit.sh | 4 ++-- >> tools/testing/selftests/rcutorture/bin/kvm-build.sh | 2 +- >> tools/testing/selftests/rcutorture/bin/kvm-recheck-lock.sh | 2 +- >> tools/testing/selftests/rcutorture/bin/kvm-recheck-rcu.sh | 2 +- >> tools/testing/selftests/rcutorture/bin/kvm-recheck.sh | 2 +- >> tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh | 2 +- >> tools/testing/selftests/rcutorture/bin/kvm.sh | 2 +- >> tools/testing/selftests/rcutorture/bin/parse-build.sh | 4 ++-- >> tools/testing/selftests/rcutorture/bin/parse-console.sh | 4 ++-- >> tools/testing/selftests/rcutorture/bin/parse-torture.sh | 4 ++-- >> 12 files changed, 18 insertions(+), 18 deletions(-) >> >> diff --git a/tools/testing/selftests/rcutorture/bin/config2frag.sh >> b/tools/testing/selftests/rcutorture/bin/config2frag.sh >> index 9f9ffcd..4e394ef 100644 >> --- a/tools/testing/selftests/rcutorture/bin/config2frag.sh >> +++ b/tools/testing/selftests/rcutorture/bin/config2frag.sh >> @@ -1,5 +1,5 @@ >> -#!/bin/sh >> -# Usage: sh config2frag.sh < .config > configfrag >> +#!/bin/bash >> +# Usage: bash config2frag.sh < .config > configfrag >> # >> # Converts the "# CONFIG_XXX is not set" to "CONFIG_XXX=n" so that the >> # resulting file becomes a legitimate Kconfig fragment. >> diff --git a/tools/testing/selftests/rcutorture/bin/configcheck.sh >> b/tools/testing/selftests/rcutorture/bin/configcheck.sh >> index d686537..6173ed5 100755 >> --- a/tools/testing/selftests/rcutorture/bin/configcheck.sh >> +++ b/tools/testing/selftests/rcutorture/bin/configcheck.sh >> @@ -1,5 +1,5 @@ >> -#!/bin/sh >> -# Usage: sh configcheck.sh .config .config-template >> +#!/bin/bash >> +# Usage: bash configcheck.sh .config .config-template >> # >> # This program is free software; you can redistribute it and/or modify >> # it under the terms of the GNU General Public License as published by >> diff --git a/tools/testing/selftests/rcutorture/bin/configinit.sh >> b/tools/testing/selftests/rcutorture/bin/configinit.sh >> index 9c3f3d3..d8f7418 100755 >> --- a/tools/testing/selftests/rcutorture/bin/configinit.sh >> +++ b/tools/testing/selftests/rcutorture/bin/configinit.sh >> @@ -1,6 +1,6 @@ >> -#!/bin/sh >> +#!/bin/bash >> # >> -# sh configinit.sh config-spec-file [ build output dir ] >> +# bash configinit.sh config-spec-file [ build output dir ] >> # >> # Create a .config file from the spec file. Run from the kernel source >> tree. >> # Exits with 0 if all went well, with 1 if all went well but the config >> diff --git a/tools/testing/selftests/rcutorture/bin/kvm-build.sh >> b/tools/testing/selftests/rcutorture/bin/kvm-build.sh >> index 7c1e56b..e4bfb91 100755 >> --- a/tools/testing/selftests/rcutorture/bin/kvm-build.sh >> +++ b/tools/testing/selftests/rcutorture/bin/kvm-build.sh >> @@ -2,7 +2,7 @@ >> # >> # Build a kvm-ready Linux kernel from the tree in the current directory. >> # >> -# Usage: sh kvm-build.sh config-template build-dir more-configs >> +# Usage: bash kvm-build.sh config-template build-dir more-configs >> # >> # This program is free software; you can redistribute it and/or modify >> # it under the terms of the GNU General Public License as published by >> diff --git a/tools/testing/selftests/rcutorture/bin/kvm-recheck-lock.sh >> b/tools/testing/selftests/rcutorture/bin/kvm-recheck-lock.sh >> index 7f1ff1a..30cbb63 100755 >> --- a/tools/testing/selftests/rcutorture/bin/kvm-recheck-lock.sh >> +++ b/tools/testing/selftests/rcutorture/bin/kvm-recheck-lock.sh >> @@ -2,7 +2,7 @@ >> # >> # Analyze a given results directory for locktorture progress. >> # >> -# Usage: sh kvm-recheck-lock.sh resdir >> +# Usage: bash kvm-recheck-lock.sh resdir >> # >> # This program is free software; you can redistribute it and/or modify >> # it under the terms of the GNU General Public License as published by >> diff --git a/tools/testing/selftests/rcutorture/bin/kvm-recheck-rcu.sh >> b/tools/testing/selftests/rcutorture/bin/kvm-recheck-rcu.sh >> index 307c4b9..6e94a5e 100755 >> --- a/tools/testing/selftests/rcutorture/bin/kvm-recheck-rcu.sh >> +++ b/tools/testing/selftests/rcutorture/bin/kvm-recheck-rcu.sh >> @@ -2,7 +2,7 @@ >> # >> # Analyze a given results directory for rcutorture progress. >> # >> -# Usage: sh kvm-recheck-rcu.sh resdir >> +# Usage: bash kvm-recheck-rcu.sh resdir >> # >> # This program is free software; you can redistribute it and/or modify >> # it under the terms of the GNU General Public License as published by >> diff --git a/tools/testing/selftests/rcutorture/bin/kvm-recheck.sh >> b/tools/testing/selftests/rcutorture/bin/kvm-recheck.sh >> index 3f6c9b7..3482b3f 100755 >> --- a/tools/testing/selftests/rcutorture/bin/kvm-recheck.sh >> +++ b/tools/testing/selftests/rcutorture/bin/kvm-recheck.sh >> @@ -4,7 +4,7 @@ >> # check the build and console output for errors. Given a directory >> # containing results directories, this recursively checks them all. >> # >> -# Usage: sh kvm-recheck.sh resdir ... >> +# Usage: bash kvm-recheck.sh resdir ... >> # >> # This program is free software; you can redistribute it and/or modify >> # it under the terms of the GNU General Public License as published by >> diff --git a/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh >> b/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh >> index 0f69dcb..5c265da 100755 >> --- a/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh >> +++ b/tools/testing/selftests/rcutorture/bin/kvm-test-1-run.sh >> @@ -6,7 +6,7 @@ >> # Execute this in the source tree. Do not run it as a background task >> # because qemu does not seem to like that much. >> # >> -# Usage: sh kvm-test-1-run.sh config builddir resdir minutes qemu-args >> boot_args >> +# Usage: bash kvm-test-1-run.sh config builddir resdir minutes qemu-args >> boot_args >> # >> # qemu-args defaults to "-nographic", along with arguments specifying the >> # number of CPUs and other options generated from >> diff --git a/tools/testing/selftests/rcutorture/bin/kvm.sh >> b/tools/testing/selftests/rcutorture/bin/kvm.sh >> index 589e9c3..ff147ad 100644 >> --- a/tools/testing/selftests/rcutorture/bin/kvm.sh >> +++ b/tools/testing/selftests/rcutorture/bin/kvm.sh >> @@ -7,7 +7,7 @@ >> # Edit the definitions below to set the locations of the various >> directories, >> # as well as the test duration. >> # >> -# Usage: sh kvm.sh [ options ] >> +# Usage: bash kvm.sh [ options ] >> # >> # This program is free software; you can redistribute it and/or modify >> # it under the terms of the GNU General Public License as published by >> diff --git a/tools/testing/selftests/rcutorture/bin/parse-build.sh >> b/tools/testing/selftests/rcutorture/bin/parse-build.sh >> index 5432309..41eeeef 100755 >> --- a/tools/testing/selftests/rcutorture/bin/parse-build.sh >> +++ b/tools/testing/selftests/rcutorture/bin/parse-build.sh >> @@ -1,4 +1,4 @@ >> -#!/bin/sh >> +#!/bin/bash >> # >> # Check the build output from an rcutorture run for goodness. >> # The "file" is a pathname on the local system, and "title" is >> @@ -7,7 +7,7 @@ >> # The file must contain kernel build output. >> # >> # Usage: >> -# sh parse-build.sh file title >> +# bash parse-build.sh file title >> # >> # This program is free software; you can redistribute it and/or modify >> # it under the terms of the GNU General Public License as published by >> diff --git a/tools/testing/selftests/rcutorture/bin/parse-console.sh >> b/tools/testing/selftests/rcutorture/bin/parse-console.sh >> index 4185d4c..2517eae 100755 >> --- a/tools/testing/selftests/rcutorture/bin/parse-console.sh >> +++ b/tools/testing/selftests/rcutorture/bin/parse-console.sh >> @@ -1,11 +1,11 @@ >> -#!/bin/sh >> +#!/bin/bash >> # >> # Check the console output from an rcutorture run for oopses. >> # The "file" is a pathname on the local system, and "title" is >> # a text string for error-message purposes. >> # >> # Usage: >> -# sh parse-console.sh file title >> +# bash parse-console.sh file title >> # >> # This program is free software; you can redistribute it and/or modify >> # it under the terms of the GNU General Public License as published by >> diff --git a/tools/testing/selftests/rcutorture/bin/parse-torture.sh >> b/tools/testing/selftests/rcutorture/bin/parse-torture.sh >> index 3455560..bbec40b 100755 >> --- a/tools/testing/selftests/rcutorture/bin/parse-torture.sh >> +++ b/tools/testing/selftests/rcutorture/bin/parse-torture.sh >> @@ -1,4 +1,4 @@ >> -#!/bin/sh >> +#!/bin/bash >> # >> # Check the console output from a torture run for goodness. >> # The "file" is a pathname on the local system, and "title" is >> @@ -8,7 +8,7 @@ >> # with other dmesg text, as in console-log output. >> # >> # Usage: >> -# sh parse-torture.sh file title >> +# bash parse-torture.sh file title >> # >> # This program is free software; you can redistribute it and/or modify >> # it under the terms of the GNU General Public License as published by >> -- >> 1.9.1 >> -- Pranith -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/