diff options
author | Rik van Riel <riel@redhat.com> | 2011-02-01 09:53:28 -0500 |
---|---|---|
committer | Marcelo Tosatti <mtosatti@redhat.com> | 2011-03-17 13:08:29 -0300 |
commit | 217ece6129f2d3b4fdd18d9e79be9e43d8d14a42 (patch) | |
tree | b2bbd81042f48e862e0c0b8743edc932102640bb /include/linux/kvm_host.h | |
parent | 34bb10b79de7df118de832f6832efb630e646577 (diff) | |
download | lwn-217ece6129f2d3b4fdd18d9e79be9e43d8d14a42.tar.gz lwn-217ece6129f2d3b4fdd18d9e79be9e43d8d14a42.zip |
KVM: use yield_to instead of sleep in kvm_vcpu_on_spin
Instead of sleeping in kvm_vcpu_on_spin, which can cause gigantic
slowdowns of certain workloads, we instead use yield_to to get
another VCPU in the same KVM guest to run sooner.
This seems to give a 10-15% speedup in certain workloads.
Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'include/linux/kvm_host.h')
-rw-r--r-- | include/linux/kvm_host.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h index 4721b11b922a..3751ea0d1f92 100644 --- a/include/linux/kvm_host.h +++ b/include/linux/kvm_host.h @@ -235,6 +235,7 @@ struct kvm { #endif struct kvm_vcpu *vcpus[KVM_MAX_VCPUS]; atomic_t online_vcpus; + int last_boosted_vcpu; struct list_head vm_list; struct mutex lock; struct kvm_io_bus *buses[KVM_NR_BUSES]; |