aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/ia64/kvm/kvm-ia64.c2
-rw-r--r--arch/powerpc/kvm/book3s_hv.c2
-rw-r--r--arch/x86/kvm/x86.c2
-rw-r--r--include/linux/kvm_host.h1
-rw-r--r--virt/kvm/kvm_main.c8
5 files changed, 3 insertions, 12 deletions
diff --git a/arch/ia64/kvm/kvm-ia64.c b/arch/ia64/kvm/kvm-ia64.c
index 985bf80c622e..53f44bee9ebb 100644
--- a/arch/ia64/kvm/kvm-ia64.c
+++ b/arch/ia64/kvm/kvm-ia64.c
@@ -702,7 +702,7 @@ again:
702out: 702out:
703 srcu_read_unlock(&vcpu->kvm->srcu, idx); 703 srcu_read_unlock(&vcpu->kvm->srcu, idx);
704 if (r > 0) { 704 if (r > 0) {
705 kvm_resched(vcpu); 705 cond_resched();
706 idx = srcu_read_lock(&vcpu->kvm->srcu); 706 idx = srcu_read_lock(&vcpu->kvm->srcu);
707 goto again; 707 goto again;
708 } 708 }
diff --git a/arch/powerpc/kvm/book3s_hv.c b/arch/powerpc/kvm/book3s_hv.c
index 072287f1c3bc..3fa99b20894f 100644
--- a/arch/powerpc/kvm/book3s_hv.c
+++ b/arch/powerpc/kvm/book3s_hv.c
@@ -1348,7 +1348,7 @@ static void kvmppc_run_core(struct kvmppc_vcore *vc)
1348 kvm_guest_exit(); 1348 kvm_guest_exit();
1349 1349
1350 preempt_enable(); 1350 preempt_enable();
1351 kvm_resched(vcpu); 1351 cond_resched();
1352 1352
1353 spin_lock(&vc->lock); 1353 spin_lock(&vc->lock);
1354 now = get_tb(); 1354 now = get_tb();
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 21ef1ba184ae..4fb1ee619c1c 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -6125,7 +6125,7 @@ static int __vcpu_run(struct kvm_vcpu *vcpu)
6125 } 6125 }
6126 if (need_resched()) { 6126 if (need_resched()) {
6127 srcu_read_unlock(&kvm->srcu, vcpu->srcu_idx); 6127 srcu_read_unlock(&kvm->srcu, vcpu->srcu_idx);
6128 kvm_resched(vcpu); 6128 cond_resched();
6129 vcpu->srcu_idx = srcu_read_lock(&kvm->srcu); 6129 vcpu->srcu_idx = srcu_read_lock(&kvm->srcu);
6130 } 6130 }
6131 } 6131 }
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index 9523d2ad7535..4ecf10775c4f 100644
--- a/include/linux/kvm_host.h
+++ b/include/linux/kvm_host.h
@@ -583,7 +583,6 @@ void kvm_vcpu_block(struct kvm_vcpu *vcpu);
583void kvm_vcpu_kick(struct kvm_vcpu *vcpu); 583void kvm_vcpu_kick(struct kvm_vcpu *vcpu);
584bool kvm_vcpu_yield_to(struct kvm_vcpu *target); 584bool kvm_vcpu_yield_to(struct kvm_vcpu *target);
585void kvm_vcpu_on_spin(struct kvm_vcpu *vcpu); 585void kvm_vcpu_on_spin(struct kvm_vcpu *vcpu);
586void kvm_resched(struct kvm_vcpu *vcpu);
587void kvm_load_guest_fpu(struct kvm_vcpu *vcpu); 586void kvm_load_guest_fpu(struct kvm_vcpu *vcpu);
588void kvm_put_guest_fpu(struct kvm_vcpu *vcpu); 587void kvm_put_guest_fpu(struct kvm_vcpu *vcpu);
589 588
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index a0aa84b5941a..03c97e7ae4ca 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -1710,14 +1710,6 @@ void kvm_vcpu_kick(struct kvm_vcpu *vcpu)
1710EXPORT_SYMBOL_GPL(kvm_vcpu_kick); 1710EXPORT_SYMBOL_GPL(kvm_vcpu_kick);
1711#endif /* !CONFIG_S390 */ 1711#endif /* !CONFIG_S390 */
1712 1712
1713void kvm_resched(struct kvm_vcpu *vcpu)
1714{
1715 if (!need_resched())
1716 return;
1717 cond_resched();
1718}
1719EXPORT_SYMBOL_GPL(kvm_resched);
1720
1721bool kvm_vcpu_yield_to(struct kvm_vcpu *target) 1713bool kvm_vcpu_yield_to(struct kvm_vcpu *target)
1722{ 1714{
1723 struct pid *pid; 1715 struct pid *pid;