According to Python documentation here for execvp: http://docs.python.org/2/library/os.html "The current process is replaced immediately. Open file objects and descriptors are not flushed, so if there may be data buffered on these open files, you should flush them using sys.stdout.flush() or os.fsync() before calling an exec* function.
Without the flush, we will miss the print statements before that if we redirect the o/p to a file. Signed-off-by: Gurucharan Shetty <gshe...@nicira.com> --- utilities/ovs-check-dead-ifs.in | 1 + 1 file changed, 1 insertion(+) diff --git a/utilities/ovs-check-dead-ifs.in b/utilities/ovs-check-dead-ifs.in index 9b806ed..ac54f6c 100755 --- a/utilities/ovs-check-dead-ifs.in +++ b/utilities/ovs-check-dead-ifs.in @@ -98,4 +98,5 @@ if bad_pids: print """ The following processes are listening for packets to arrive on network devices that no longer exist. You may want to restart them.""" + sys.stdout.flush() os.execvp("ps", ["ps"] + ["%s" % pid for pid in bad_pids]) -- 1.7.9.5 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev