Patchwork [11/12] Fix detached migration with exec.

login
register
mail settings
Submitter Glauber Costa
Date Aug. 26, 2009, 1:05 p.m.
Message ID <1251291946-25821-12-git-send-email-glommer@redhat.com>
Download mbox | patch
Permalink /patch/32167/
State Superseded
Headers show

Comments

Glauber Costa - Aug. 26, 2009, 1:05 p.m.
From: Chris Lalancette <clalance@redhat.com>

When trying to do detached migration with exec, I found that
the monitor wouldn't always return in a timely manner.  I
tracked this down to exec_start_outgoing_migration.  It
appeared we were setting the fd to NONBLOCK'ing, but in
point of fact we weren't.

This bugfix should also go onto the stable 0.10 branch

Signed-off-by: Chris Lalancette <clalance@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Signed-off-by: Glauber Costa <glommer@redhat.com>
---
 migration-exec.c |    5 +----
 1 files changed, 1 insertions(+), 4 deletions(-)
Chris Lalancette - Aug. 27, 2009, 7:54 a.m.
Glauber Costa wrote:
> From: Chris Lalancette <clalance@redhat.com>
> 
> When trying to do detached migration with exec, I found that
> the monitor wouldn't always return in a timely manner.  I
> tracked this down to exec_start_outgoing_migration.  It
> appeared we were setting the fd to NONBLOCK'ing, but in
> point of fact we weren't.
> 
> This bugfix should also go onto the stable 0.10 branch

ACK!

Patch

diff --git a/migration-exec.c b/migration-exec.c
index ade592e..6786dbf 100644
--- a/migration-exec.c
+++ b/migration-exec.c
@@ -74,10 +74,7 @@  MigrationState *exec_start_outgoing_migration(const char *command,
         goto err_after_open;
     }
 
-    if (fcntl(s->fd, F_SETFD, O_NONBLOCK) == -1) {
-        dprintf("Unable to set nonblocking mode on file descriptor\n");
-        goto err_after_open;
-    }
+    socket_set_nonblock(s->fd);
 
     s->opaque = qemu_popen(f, "w");