]> git.proxmox.com Git - qemu.git/commitdiff
migrate.c: migrate_fd_put_buffer: Do not busyloop: stop writing if EWOULDBLOCK
authorUri Lublin <uril@redhat.com>
Tue, 19 May 2009 11:08:53 +0000 (14:08 +0300)
committerAnthony Liguori <aliguori@us.ibm.com>
Wed, 20 May 2009 14:12:57 +0000 (09:12 -0500)
The migration code is non-blocking, designed for live migration.

Practically migrate_fd_put_buffer busy-loops trying to write, as
on many machines EWOULDBLOCK==EAGAIN (look in include/asm-generic/errno.h).

Signed-off-by: Uri Lublin <uril@redhat.com>
migration.c

index 859d9454344d97e0e494c972add00bef59c6595b..ca397faf71c373e9bf7e18dd44756a297cf39690 100644 (file)
@@ -176,7 +176,7 @@ ssize_t migrate_fd_put_buffer(void *opaque, const void *data, size_t size)
 
     do {
         ret = s->write(s, data, size);
-    } while (ret == -1 && ((s->get_error(s)) == EINTR || (s->get_error(s)) == EWOULDBLOCK));
+    } while (ret == -1 && ((s->get_error(s)) == EINTR));
 
     if (ret == -1)
         ret = -(s->get_error(s));