summaryrefslogtreecommitdiffstats
path: root/qemu-nbd.c
diff options
context:
space:
mode:
authorMax Reitz2019-05-08 23:18:18 +0200
committerEric Blake2019-06-13 15:50:47 +0200
commite6df58a5578fee7a50bbf36f4a50a2781cff855d (patch)
tree3d22201a770ced994c2f720fdf0d0003321e9447 /qemu-nbd.c
parentiotests.py: Add qemu_nbd_early_pipe() (diff)
downloadqemu-e6df58a5578fee7a50bbf36f4a50a2781cff855d.tar.gz
qemu-e6df58a5578fee7a50bbf36f4a50a2781cff855d.tar.xz
qemu-e6df58a5578fee7a50bbf36f4a50a2781cff855d.zip
qemu-nbd: Do not close stderr
We kept old_stderr specifically so we could keep emitting error message on stderr. However, qemu_daemon() closes stderr. Therefore, we need to dup() stderr to old_stderr before invoking qemu_daemon(). Signed-off-by: Max Reitz <mreitz@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-Id: <20190508211820.17851-4-mreitz@redhat.com> Signed-off-by: Eric Blake <eblake@redhat.com>
Diffstat (limited to 'qemu-nbd.c')
-rw-r--r--qemu-nbd.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/qemu-nbd.c b/qemu-nbd.c
index 99377a3f14..a8cb39e510 100644
--- a/qemu-nbd.c
+++ b/qemu-nbd.c
@@ -1004,10 +1004,11 @@ int main(int argc, char **argv)
exit(EXIT_FAILURE);
} else if (pid == 0) {
close(stderr_fd[0]);
+
+ old_stderr = dup(STDERR_FILENO);
ret = qemu_daemon(1, 0);
/* Temporarily redirect stderr to the parent's pipe... */
- old_stderr = dup(STDERR_FILENO);
dup2(stderr_fd[1], STDERR_FILENO);
if (ret < 0) {
error_report("Failed to daemonize: %s", strerror(errno));