From: Alexander Graf <agraf@suse.de>
To: KVM devel mailing list <kvm@vger.kernel.org>
Cc: Scott Wood <scottwood@freescale.com>
Subject: [PATCH 2/6] KVM: PPC: fix exit accounting for SPRs, tlbwe, tlbsx
Date: Tue, 3 May 2011 14:36:57 +0200 [thread overview]
Message-ID: <1304426221-23178-3-git-send-email-agraf@suse.de> (raw)
In-Reply-To: <1304426221-23178-1-git-send-email-agraf@suse.de>
From: Scott Wood <scottwood@freescale.com>
The exit type setting for mfspr/mtspr is moved from 44x to toplevel SPR
emulation. This enables it on e500, and makes sure that all SPRs
are covered.
Exit accounting for tlbwe and tlbsx is added to e500.
Signed-off-by: Stuart Yoder <stuart.yoder@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
---
arch/powerpc/kvm/44x_emulate.c | 2 --
arch/powerpc/kvm/e500_tlb.c | 5 ++++-
arch/powerpc/kvm/emulate.c | 2 ++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/arch/powerpc/kvm/44x_emulate.c b/arch/powerpc/kvm/44x_emulate.c
index 65ea083..549bb2c 100644
--- a/arch/powerpc/kvm/44x_emulate.c
+++ b/arch/powerpc/kvm/44x_emulate.c
@@ -158,7 +158,6 @@ int kvmppc_core_emulate_mtspr(struct kvm_vcpu *vcpu, int sprn, int rs)
emulated = kvmppc_booke_emulate_mtspr(vcpu, sprn, rs);
}
- kvmppc_set_exit_type(vcpu, EMULATED_MTSPR_EXITS);
return emulated;
}
@@ -179,7 +178,6 @@ int kvmppc_core_emulate_mfspr(struct kvm_vcpu *vcpu, int sprn, int rt)
emulated = kvmppc_booke_emulate_mfspr(vcpu, sprn, rt);
}
- kvmppc_set_exit_type(vcpu, EMULATED_MFSPR_EXITS);
return emulated;
}
diff --git a/arch/powerpc/kvm/e500_tlb.c b/arch/powerpc/kvm/e500_tlb.c
index d6d6d47..56ac452 100644
--- a/arch/powerpc/kvm/e500_tlb.c
+++ b/arch/powerpc/kvm/e500_tlb.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2008 Freescale Semiconductor, Inc. All rights reserved.
+ * Copyright (C) 2008-2011 Freescale Semiconductor, Inc. All rights reserved.
*
* Author: Yu Liu, yu.liu@freescale.com
*
@@ -24,6 +24,7 @@
#include "../mm/mmu_decl.h"
#include "e500_tlb.h"
#include "trace.h"
+#include "timing.h"
#define to_htlb1_esel(esel) (tlb1_entry_num - (esel) - 1)
@@ -506,6 +507,7 @@ int kvmppc_e500_emul_tlbsx(struct kvm_vcpu *vcpu, int rb)
vcpu_e500->mas7 = 0;
}
+ kvmppc_set_exit_type(vcpu, EMULATED_TLBSX_EXITS);
return EMULATE_DONE;
}
@@ -571,6 +573,7 @@ int kvmppc_e500_emul_tlbwe(struct kvm_vcpu *vcpu)
write_host_tlbe(vcpu_e500, stlbsel, sesel);
}
+ kvmppc_set_exit_type(vcpu, EMULATED_TLBWE_EXITS);
return EMULATE_DONE;
}
diff --git a/arch/powerpc/kvm/emulate.c b/arch/powerpc/kvm/emulate.c
index c64fd29..8f7a3aa 100644
--- a/arch/powerpc/kvm/emulate.c
+++ b/arch/powerpc/kvm/emulate.c
@@ -294,6 +294,7 @@ int kvmppc_emulate_instruction(struct kvm_run *run, struct kvm_vcpu *vcpu)
}
break;
}
+ kvmppc_set_exit_type(vcpu, EMULATED_MFSPR_EXITS);
break;
case OP_31_XOP_STHX:
@@ -363,6 +364,7 @@ int kvmppc_emulate_instruction(struct kvm_run *run, struct kvm_vcpu *vcpu)
printk("mtspr: unknown spr %x\n", sprn);
break;
}
+ kvmppc_set_exit_type(vcpu, EMULATED_MTSPR_EXITS);
break;
case OP_31_XOP_DCBI:
--
1.6.0.2
next prev parent reply other threads:[~2011-05-03 12:37 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-03 12:36 [PULL 0/6] PPC KVM patches Alexander Graf
2011-05-03 12:36 ` [PATCH 1/6] KVM: PPC: e500: emulate SVR Alexander Graf
2011-05-03 12:36 ` Alexander Graf [this message]
2011-05-03 12:36 ` [PATCH 3/6] KVM: PPC: use ticks, not usecs, for exit timing Alexander Graf
2011-05-03 12:36 ` [PATCH 4/6] KVM: PPC: booke: save/restore VRSAVE (a.k.a. USPRG0) Alexander Graf
2011-05-03 12:37 ` [PATCH 5/6] KVM: PPC: booke: add sregs support Alexander Graf
2011-05-03 12:37 ` [PATCH 6/6] KVM: PPC: Add kvm headers to headers_install Alexander Graf
2011-05-03 14:20 ` Jan Kiszka
2011-05-03 14:36 ` Alexander Graf
2011-05-03 14:44 ` Jan Kiszka
2011-05-03 15:04 ` Alexander Graf
2011-05-03 15:10 ` Jan Kiszka
2011-05-03 15:14 ` Alexander Graf
2011-05-03 16:20 ` Scott Wood
2011-05-04 5:55 ` Alexander Graf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1304426221-23178-3-git-send-email-agraf@suse.de \
--to=agraf@suse.de \
--cc=kvm@vger.kernel.org \
--cc=scottwood@freescale.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).