X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Ftests%2Frename.pl;h=3629553fea48f514182507041015c0c5962b6e32;hb=76ca884398cae59e455caf3ae2ab1609c5fb1eea;hp=4ea020f2c0a9b796d7cbc0f8481616b6974fcce0;hpb=a2a0746305449dbd925879b14dc2c0d6040bb8bf;p=fs%2Flustre-release.git diff --git a/lustre/tests/rename.pl b/lustre/tests/rename.pl index 4ea020f..3629553 100644 --- a/lustre/tests/rename.pl +++ b/lustre/tests/rename.pl @@ -12,11 +12,14 @@ use POSIX ":sys_wait_h"; use vars qw( $MAX_THREADS + $SCRIPT_NAME ); # Don't try to run more than this many threads concurrently. $MAX_THREADS = 16; +$SCRIPT_NAME = "rename.pl"; + # Initialize variables my $silent = 0; my $create_files = 1; # should we create files or not? @@ -90,7 +93,7 @@ for (my $i=1; $i<=$num_threads; $i++) { # Wait for all our threads to finish. my $child = 0; do { - $child = waitpid(-1, WNOHANG); + $child = waitpid(-1, 0); } until $child > 0; sleep 1; @@ -104,7 +107,7 @@ if ($create_files) { unlink("$filepath") if (-e $filepath); } my $rc = rmdir $path; - print "rmdir $path failed: $!\n" if !$rc; + print "$SCRIPT_NAME - rmdir $path failed: $!\n" if !$rc; } } } @@ -126,7 +129,7 @@ sub usage () { print "\t--mountpt\tlocation of lustre mount\n"; print "\t--num_mounts=n\tnumber of lustre mounts to test across, default=-1 (single mount point without numeric suffix)\n\n"; print "example: $0 --mountpt=/mnt/lustre --num_mounts=2 --iterations=50\n"; - print " will perform 50 interations in /mnt/lustre1 and /mnt/lustre2\n"; + print " will perform 50 iterations in /mnt/lustre1 and /mnt/lustre2\n"; print " $0 --mountpt=/mnt/lustre --num_mounts=-1 --iterations=50\n"; print " will perform 50 iterations in /mnt/lustre only\n\n"; exit; @@ -137,6 +140,11 @@ sub usage () { sub create_file ($) { my ($path) = @_;; + if (-e $path) { + warn "$path already exists!\n"; + return 1; + } + if ($use_mcreate) { my $tmp = `./mcreate $path`; if ($tmp =~ /.*error: (.*)\n/) { @@ -174,18 +182,18 @@ sub fork_and_rename ($) { my $path_f1 = "${mountpt}${which}/${thread_num}.${d}/${f1}"; my $path_f2 = "${mountpt}${which}/${thread_num}.${d}/${f2}"; - print "Thread $thread_num: [$$] $path_f1 $path_f2 ...\n" if !$silent; + print "$SCRIPT_NAME - Thread $thread_num: [$$] $path_f1 $path_f2 ...\n" if !$silent; my $rc = rename $path_f1, $path_f2; - print "Thread $thread_num: [$$] done: $rc\n" if !$silent; + print "$SCRIPT_NAME - Thread $thread_num: [$$] done: $rc\n" if !$silent; } if (($current_iteration) % 100 == 0) { - print STDERR "Thread $thread_num: " . $current_iteration . " operations [" . $$ . "]\n"; + print "$SCRIPT_NAME - Thread $thread_num: " . $current_iteration . " operations [" . $$ . "]\n"; } $current_iteration++; } - print "Thread $thread_num: Done.\n"; + print "$SCRIPT_NAME - Thread $thread_num: Done.\n"; exit 0;