]> rtime.felk.cvut.cz Git - lisovros/qemu_apohw.git/commit
KVM: Retry KVM_CREATE_VM on EINTR
authorthomas knych <thomaswk@google.com>
Thu, 9 Jan 2014 21:14:23 +0000 (13:14 -0800)
committerMichael Roth <mdroth@linux.vnet.ibm.com>
Fri, 21 Feb 2014 06:34:41 +0000 (00:34 -0600)
commit47c6edce7a2ed614bfe40c5d542275330975d1b6
tree421701194e8ef091f957daf9eff29769eb9cdbef
parenta5221ee1430928ac013f9723134dacb62359247e
KVM: Retry KVM_CREATE_VM on EINTR

Upstreaming this change from Android (https://android-review.googlesource.com/54211).

On heavily loaded machines with many VM instances we see KVM_CREATE_VM
failing with EINTR on this path:

kvm_dev_ioctl_create_vm -> kvm_create_vm -> kvm_init_mmu_notifier -> mmu_notifier_register ->  do_mmu_notifier_register -> mm_take_all_locks

which checks if any signals have been raised while it was attaining locks
and returns EINTR.  Retrying the system call greatly improves reliability.

Cc: qemu-stable@nongnu.org
Signed-off-by: thomas knych <thomaswk@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit 94ccff133820552a859c0fb95e33a539e0b90a75)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
kvm-all.c