aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAlexander Graf <agraf@suse.de>2009-12-21 14:21:25 -0500
committerMarcelo Tosatti <mtosatti@redhat.com>2010-03-01 10:35:42 -0500
commit0bb1fb7178c55f3e295b2ffe0433c330f960458e (patch)
treeab727334c1fb3ab5e2df416b01bddbe72c6dd965 /arch
parent7706664d39a8eb8555408a24b1f17bd2086189c6 (diff)
KVM: powerpc: Remove AGGRESSIVE_DEC
Because we now emulate the DEC interrupt according to real life behavior, there's no need to keep the AGGRESSIVE_DEC hack around. Let's just remove it. Signed-off-by: Alexander Graf <agraf@suse.de> Acked-by: Acked-by: Hollis Blanchard <hollis@penguinppc.org> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/kvm/book3s.c16
1 files changed, 1 insertions, 15 deletions
diff --git a/arch/powerpc/kvm/book3s.c b/arch/powerpc/kvm/book3s.c
index fd3ad6c7f355..803505d3e455 100644
--- a/arch/powerpc/kvm/book3s.c
+++ b/arch/powerpc/kvm/book3s.c
@@ -34,12 +34,6 @@
34/* #define EXIT_DEBUG */ 34/* #define EXIT_DEBUG */
35/* #define EXIT_DEBUG_SIMPLE */ 35/* #define EXIT_DEBUG_SIMPLE */
36 36
37/* Without AGGRESSIVE_DEC we only fire off a DEC interrupt when DEC turns 0.
38 * When set, we retrigger a DEC interrupt after that if DEC <= 0.
39 * PPC32 Linux runs faster without AGGRESSIVE_DEC, PPC64 Linux requires it. */
40
41/* #define AGGRESSIVE_DEC */
42
43struct kvm_stats_debugfs_item debugfs_entries[] = { 37struct kvm_stats_debugfs_item debugfs_entries[] = {
44 { "exits", VCPU_STAT(sum_exits) }, 38 { "exits", VCPU_STAT(sum_exits) },
45 { "mmio", VCPU_STAT(mmio_exits) }, 39 { "mmio", VCPU_STAT(mmio_exits) },
@@ -81,7 +75,7 @@ void kvmppc_core_vcpu_put(struct kvm_vcpu *vcpu)
81 to_book3s(vcpu)->slb_shadow_max = get_paca()->kvm_slb_max; 75 to_book3s(vcpu)->slb_shadow_max = get_paca()->kvm_slb_max;
82} 76}
83 77
84#if defined(AGGRESSIVE_DEC) || defined(EXIT_DEBUG) 78#if defined(EXIT_DEBUG)
85static u32 kvmppc_get_dec(struct kvm_vcpu *vcpu) 79static u32 kvmppc_get_dec(struct kvm_vcpu *vcpu)
86{ 80{
87 u64 jd = mftb() - vcpu->arch.dec_jiffies; 81 u64 jd = mftb() - vcpu->arch.dec_jiffies;
@@ -273,14 +267,6 @@ void kvmppc_core_deliver_interrupts(struct kvm_vcpu *vcpu)
273 unsigned long *pending = &vcpu->arch.pending_exceptions; 267 unsigned long *pending = &vcpu->arch.pending_exceptions;
274 unsigned int priority; 268 unsigned int priority;
275 269
276 /* XXX be more clever here - no need to mftb() on every entry */
277 /* Issue DEC again if it's still active */
278#ifdef AGGRESSIVE_DEC
279 if (vcpu->arch.msr & MSR_EE)
280 if (kvmppc_get_dec(vcpu) & 0x80000000)
281 kvmppc_core_queue_dec(vcpu);
282#endif
283
284#ifdef EXIT_DEBUG 270#ifdef EXIT_DEBUG
285 if (vcpu->arch.pending_exceptions) 271 if (vcpu->arch.pending_exceptions)
286 printk(KERN_EMERG "KVM: Check pending: %lx\n", vcpu->arch.pending_exceptions); 272 printk(KERN_EMERG "KVM: Check pending: %lx\n", vcpu->arch.pending_exceptions);