+17
−17
Loading
Waiting on a process for which we have a pipe will stall if the process outputs more data than fits into the OS-provided buffer. We must use communicate() before wait(), and in fact, communicate() perfectly replaces wait() already. We have to drop the stderr=subprocess.STDOUT parameter from subprocess.Popen() in qemu_nbd_early_pipe(), because stderr is passed on to the child process, so if we do not drop this parameter, communicate() will hang (because the pipe is not closed). Signed-off-by:Max Reitz <mreitz@redhat.com> Message-Id: <20200630083711.40567-1-mreitz@redhat.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>