aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvi Kivity <avi@qumranet.com>2008-02-24 14:57:17 +0200
committerAvi Kivity <avi@qumranet.com>2008-02-24 14:57:17 +0200
commit8f2def508d56d78abc7758e55c35213ea4faae02 (patch)
treeb59b48048820f7b3c40a0d799c4b29125f22088f
parenta393f83bd52661432ecbcb303dab38f0cead9ca9 (diff)
kvm: libkvm: avoid losing errno if post_kvm_run() calls libckvm-62rc1
Signed-off-by: Avi Kivity <avi@qumranet.com>
-rw-r--r--kvm/libkvm/libkvm.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/kvm/libkvm/libkvm.c b/kvm/libkvm/libkvm.c
index 7329f86a4..966501cb7 100644
--- a/kvm/libkvm/libkvm.c
+++ b/kvm/libkvm/libkvm.c
@@ -848,13 +848,16 @@ again:
if (r)
return r;
r = ioctl(fd, KVM_RUN, 0);
- post_kvm_run(kvm, vcpu);
if (r == -1 && errno != EINTR && errno != EAGAIN) {
r = -errno;
- printf("kvm_run: %m\n");
+ post_kvm_run(kvm, vcpu);
+ printf("kvm_run: %s\n", strerror(-r));
return r;
}
+
+ post_kvm_run(kvm, vcpu);
+
if (r == -1) {
r = handle_io_window(kvm);
goto more;