From: Gurucharan Shetty Date: Fri, 4 Oct 2013 21:52:34 +0000 (-0700) Subject: ovs-lib: Revert "Return the exit status of ovs-ctl in ovs_ctl()." X-Git-Tag: sliver-openvswitch-2.0.90-1~11^2 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=a34779bcbe9a4fd568bdcd414ee0416c208dbf22;p=sliver-openvswitch.git ovs-lib: Revert "Return the exit status of ovs-ctl in ovs_ctl()." This reverts commit 9d46457e07ca which had a side-effect that ssh executing start/restart command on a remote machine would hang as one of the file descriptors created in that commit was getting passed along to the daemons. The daemons weren't closing it and hence ssh would just wait for them to close and hang. Signed-off-by: Gurucharan Shetty Acked-by: Ben Pfaff --- diff --git a/utilities/ovs-lib.in b/utilities/ovs-lib.in index 0b6f42ffc..1684ddcdd 100644 --- a/utilities/ovs-lib.in +++ b/utilities/ovs-lib.in @@ -41,11 +41,6 @@ ovs_ctl_log () { echo "$@" >> "${logdir}/ovs-ctl.log" } -stdintoexitstatus () { - read exitstatus - return $exitstatus -} - ovs_ctl () { case "$@" in *"=strace"*) @@ -55,14 +50,8 @@ ovs_ctl () { "${datadir}/scripts/ovs-ctl" "$@" ;; *) - # Tee ovs-ctl output to ovs-ctl.log and yield ovs-ctl's exit - # status. See (line wrapped) - # http://unix.stackexchange.com/questions/14270/\ - # get-exit-status-of-process-thats-piped-to-another/70675#70675 echo "`date -u`:$@" >> "${logdir}/ovs-ctl.log" - ( ( ( ( ("${datadir}/scripts/ovs-ctl" "$@" 2>&1 ; echo $? >&3) \ - | tee -a "${logdir}/ovs-ctl.log") >&4) 3>&1) | stdintoexitstatus) \ - 4>&1 + "${datadir}/scripts/ovs-ctl" "$@" 2>&1 | tee -a "${logdir}/ovs-ctl.log" ;; esac }