]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
Remote code caught EINTR making it ininterruptable
authorDaniel Veillard <veillard@redhat.com>
Fri, 30 Oct 2009 11:08:26 +0000 (12:08 +0100)
committerDaniel Veillard <veillard@redhat.com>
Fri, 30 Oct 2009 11:08:26 +0000 (12:08 +0100)
John Levon raised the issue that remoteIOEventLoop() poll call was
reissued after EINTR was caught making it uninterruptible.
* src/remote/remote_driver.c: catch EAGAIN instead as suggested by
  Richard Jones

src/remote/remote_driver.c

index bf001ebdeba66bf0e2adf08f3b992174b6c82145..a1989999c91c649d1033098da03c63249b271f6d 100644 (file)
@@ -7845,7 +7845,7 @@ remoteIOEventLoop(virConnectPtr conn,
 
     repoll:
         ret = poll(fds, ARRAY_CARDINALITY(fds), -1);
-        if (ret < 0 && errno == EINTR)
+        if (ret < 0 && errno == EAGAIN)
             goto repoll;
         remoteDriverLock(priv);