Skip to content

Commit b9ac7cc

Browse files
committed
torture: Use mktemp instead of guessing at unique names
This commit drags the rcutorture scripting kicking and screaming into the twenty-first century by making use of the BSD-derived mktemp command to create temporary files and directories. In happy contrast to many of its ill-behaved predecessors, mktemp seems to actually work reasonably reliably! Signed-off-by: Paul E. McKenney <[email protected]>
1 parent bd76e51 commit b9ac7cc

File tree

15 files changed

+20
-35
lines changed

15 files changed

+20
-35
lines changed

tools/testing/selftests/rcutorture/bin/config2csv.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,8 @@ else
3030
fi
3131
scenarios="`echo $scenariosarg | sed -e "s/\<CFLIST\>/$defaultconfigs/g"`"
3232

33-
T=/tmp/config2latex.sh.$$
33+
T=`mktemp -d /tmp/config2latex.sh.XXXXXX`
3434
trap 'rm -rf $T' 0
35-
mkdir $T
3635

3736
cat << '---EOF---' >> $T/p.awk
3837
END {

tools/testing/selftests/rcutorture/bin/config_override.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,8 @@ else
2929
exit 1
3030
fi
3131

32-
T=${TMPDIR-/tmp}/config_override.sh.$$
32+
T="`mktemp -d ${TMPDIR-/tmp}/config_override.sh.XXXXXX`"
3333
trap 'rm -rf $T' 0
34-
mkdir $T
3534

3635
sed < $override -e 's/^/grep -v "/' -e 's/=.*$/="/' |
3736
awk '

tools/testing/selftests/rcutorture/bin/configcheck.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,8 @@
77
#
88
# Authors: Paul E. McKenney <[email protected]>
99

10-
T=${TMPDIR-/tmp}/abat-chk-config.sh.$$
10+
T="`mktemp -d ${TMPDIR-/tmp}/configcheck.sh.XXXXXX`"
1111
trap 'rm -rf $T' 0
12-
mkdir $T
1312

1413
cat $1 > $T/.config
1514

tools/testing/selftests/rcutorture/bin/configinit.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,8 @@
1515
#
1616
# Authors: Paul E. McKenney <[email protected]>
1717

18-
T=${TMPDIR-/tmp}/configinit.sh.$$
18+
T="`mktemp -d ${TMPDIR-/tmp}/configinit.sh.XXXXXX`"
1919
trap 'rm -rf $T' 0
20-
mkdir $T
2120

2221
# Capture config spec file.
2322

tools/testing/selftests/rcutorture/bin/kvm-again.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,8 @@
1212
scriptname=$0
1313
args="$*"
1414

15-
T=${TMPDIR-/tmp}/kvm-again.sh.$$
15+
T="`mktemp -d ${TMPDIR-/tmp}/kvm-again.sh.XXXXXX`"
1616
trap 'rm -rf $T' 0
17-
mkdir $T
1817

1918
if ! test -d tools/testing/selftests/rcutorture/bin
2019
then

tools/testing/selftests/rcutorture/bin/kvm-assign-cpus.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,8 @@
77
#
88
# Usage: kvm-assign-cpus.sh /path/to/sysfs
99

10-
T=/tmp/kvm-assign-cpus.sh.$$
10+
T="`mktemp -d ${TMPDIR-/tmp}/kvm-assign-cpus.sh.XXXXXX`"
1111
trap 'rm -rf $T' 0 2
12-
mkdir $T
1312

1413
sysfsdir=${1-/sys/devices/system/node}
1514
if ! cd "$sysfsdir" > $T/msg 2>&1

tools/testing/selftests/rcutorture/bin/kvm-build.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,8 @@ then
2323
fi
2424
resdir=${2}
2525

26-
T=${TMPDIR-/tmp}/test-linux.sh.$$
26+
T="`mktemp -d ${TMPDIR-/tmp}/kvm-build.sh.XXXXXX`"
2727
trap 'rm -rf $T' 0
28-
mkdir $T
2928

3029
cp ${config_template} $T/config
3130
cat << ___EOF___ >> $T/config

tools/testing/selftests/rcutorture/bin/kvm-end-run-stats.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,8 @@ then
1818
exit 1
1919
fi
2020

21-
T=${TMPDIR-/tmp}/kvm-end-run-stats.sh.$$
21+
T="`mktemp -d ${TMPDIR-/tmp}/kvm-end-run-stats.sh.XXXXXX`"
2222
trap 'rm -rf $T' 0
23-
mkdir $T
2423

2524
RCUTORTURE="`pwd`/tools/testing/selftests/rcutorture"; export RCUTORTURE
2625
PATH=${RCUTORTURE}/bin:$PATH; export PATH

tools/testing/selftests/rcutorture/bin/kvm-remote.sh

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,18 @@ fi
3434
shift
3535

3636
# Pathnames:
37-
# T: /tmp/kvm-remote.sh.$$
38-
# resdir: /tmp/kvm-remote.sh.$$/res
39-
# rundir: /tmp/kvm-remote.sh.$$/res/$ds ("-remote" suffix)
37+
# T: /tmp/kvm-remote.sh.NNNNNN where "NNNNNN" is set by mktemp
38+
# resdir: /tmp/kvm-remote.sh.NNNNNN/res
39+
# rundir: /tmp/kvm-remote.sh.NNNNNN/res/$ds ("-remote" suffix)
4040
# oldrun: `pwd`/tools/testing/.../res/$otherds
4141
#
4242
# Pathname segments:
43-
# TD: kvm-remote.sh.$$
43+
# TD: kvm-remote.sh.NNNNNN
4444
# ds: yyyy.mm.dd-hh.mm.ss-remote
4545

46-
TD=kvm-remote.sh.$$
47-
T=${TMPDIR-/tmp}/$TD
46+
T="`mktemp -d ${TMPDIR-/tmp}/kvm-remote.sh.XXXXXX`"
4847
trap 'rm -rf $T' 0
49-
mkdir $T
48+
TD="`basename "$T"`"
5049

5150
resdir="$T/res"
5251
ds=`date +%Y.%m.%d-%H.%M.%S`-remote

tools/testing/selftests/rcutorture/bin/kvm-test-1-run-batch.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,8 @@
1313
#
1414
# Authors: Paul E. McKenney <[email protected]>
1515

16-
T=${TMPDIR-/tmp}/kvm-test-1-run-batch.sh.$$
16+
T="`mktemp -d ${TMPDIR-/tmp}/kvm-test-1-run-batch.sh.XXXXXX`"
1717
trap 'rm -rf $T' 0
18-
mkdir $T
1918

2019
echo ---- Running batch $*
2120
# Check arguments

0 commit comments

Comments
 (0)