From 45b7db0379706165b65554720810d170e828e72f Mon Sep 17 00:00:00 2001 From: Martin Quinson Date: Tue, 22 Sep 2015 21:23:00 +0200 Subject: [PATCH 1/1] [tesh] cleanup: don't start useless process instead of killing it right away --- tools/tesh/tesh.pl | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/tools/tesh/tesh.pl b/tools/tesh/tesh.pl index 95ae2ad6fe..d67fe47496 100755 --- a/tools/tesh/tesh.pl +++ b/tools/tesh/tesh.pl @@ -290,7 +290,7 @@ sub exec_cmd { close CHILD_IN; # if timeout specified, fork and kill executing child at the end of timeout - if (defined($cmd{'timeout'}) or defined($opts{'timeout'})){ + if (not $cmd{'background'} and (defined($cmd{'timeout'}) or defined($opts{'timeout'}))){ $time_to_wait= defined($cmd{'timeout'}) ? $cmd{'timeout'} : $opts{'timeout'}; $forked = fork(); $timeout=-1; @@ -302,19 +302,13 @@ sub exec_cmd { # Cleanup the executing child, and kill the timeouter brother on need $cmd{'return'} = 0 unless defined($cmd{'return'}); - if($cmd{'background'} != 1){ + if ($cmd{'background'} != 1) { waitpid ($cmd{'pid'}, 0); $cmd{'gotret'} = exit_status($?); parse_out(\%cmd); - }else{ + } else { # & commands, which will be handled at the end push @bg_cmds, \%cmd; - # no timeout for background commands - if($forked){ - kill('KILL', $forked); - $timeout=0; - $forked=0; - } } } -- 2.20.1