KVM: ppc: rename 44x MMU functions used in booke.c
e500 will provide its own implementation of these. Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
Родитель
be8d1cae07
Коммит
fa86b8dda2
|
@ -59,6 +59,8 @@ extern void kvmppc_mmu_map(struct kvm_vcpu *vcpu, u64 gvaddr, gpa_t gpaddr,
|
||||||
extern void kvmppc_mmu_priv_switch(struct kvm_vcpu *vcpu, int usermode);
|
extern void kvmppc_mmu_priv_switch(struct kvm_vcpu *vcpu, int usermode);
|
||||||
extern void kvmppc_mmu_switch_pid(struct kvm_vcpu *vcpu, u32 pid);
|
extern void kvmppc_mmu_switch_pid(struct kvm_vcpu *vcpu, u32 pid);
|
||||||
extern void kvmppc_mmu_destroy(struct kvm_vcpu *vcpu);
|
extern void kvmppc_mmu_destroy(struct kvm_vcpu *vcpu);
|
||||||
|
extern int kvmppc_mmu_dtlb_index(struct kvm_vcpu *vcpu, gva_t eaddr);
|
||||||
|
extern int kvmppc_mmu_itlb_index(struct kvm_vcpu *vcpu, gva_t eaddr);
|
||||||
extern gpa_t kvmppc_mmu_xlate(struct kvm_vcpu *vcpu, unsigned int gtlb_index,
|
extern gpa_t kvmppc_mmu_xlate(struct kvm_vcpu *vcpu, unsigned int gtlb_index,
|
||||||
gva_t eaddr);
|
gva_t eaddr);
|
||||||
|
|
||||||
|
|
|
@ -218,14 +218,14 @@ gpa_t kvmppc_mmu_xlate(struct kvm_vcpu *vcpu, unsigned int gtlb_index,
|
||||||
return get_tlb_raddr(gtlbe) | (eaddr & pgmask);
|
return get_tlb_raddr(gtlbe) | (eaddr & pgmask);
|
||||||
}
|
}
|
||||||
|
|
||||||
int kvmppc_44x_itlb_index(struct kvm_vcpu *vcpu, gva_t eaddr)
|
int kvmppc_mmu_itlb_index(struct kvm_vcpu *vcpu, gva_t eaddr)
|
||||||
{
|
{
|
||||||
unsigned int as = !!(vcpu->arch.msr & MSR_IS);
|
unsigned int as = !!(vcpu->arch.msr & MSR_IS);
|
||||||
|
|
||||||
return kvmppc_44x_tlb_index(vcpu, eaddr, vcpu->arch.pid, as);
|
return kvmppc_44x_tlb_index(vcpu, eaddr, vcpu->arch.pid, as);
|
||||||
}
|
}
|
||||||
|
|
||||||
int kvmppc_44x_dtlb_index(struct kvm_vcpu *vcpu, gva_t eaddr)
|
int kvmppc_mmu_dtlb_index(struct kvm_vcpu *vcpu, gva_t eaddr)
|
||||||
{
|
{
|
||||||
unsigned int as = !!(vcpu->arch.msr & MSR_DS);
|
unsigned int as = !!(vcpu->arch.msr & MSR_DS);
|
||||||
|
|
||||||
|
|
|
@ -25,8 +25,6 @@
|
||||||
|
|
||||||
extern int kvmppc_44x_tlb_index(struct kvm_vcpu *vcpu, gva_t eaddr,
|
extern int kvmppc_44x_tlb_index(struct kvm_vcpu *vcpu, gva_t eaddr,
|
||||||
unsigned int pid, unsigned int as);
|
unsigned int pid, unsigned int as);
|
||||||
extern int kvmppc_44x_dtlb_index(struct kvm_vcpu *vcpu, gva_t eaddr);
|
|
||||||
extern int kvmppc_44x_itlb_index(struct kvm_vcpu *vcpu, gva_t eaddr);
|
|
||||||
|
|
||||||
extern int kvmppc_44x_emul_tlbsx(struct kvm_vcpu *vcpu, u8 rt, u8 ra, u8 rb,
|
extern int kvmppc_44x_emul_tlbsx(struct kvm_vcpu *vcpu, u8 rt, u8 ra, u8 rb,
|
||||||
u8 rc);
|
u8 rc);
|
||||||
|
|
|
@ -292,7 +292,7 @@ int kvmppc_handle_exit(struct kvm_run *run, struct kvm_vcpu *vcpu,
|
||||||
gfn_t gfn;
|
gfn_t gfn;
|
||||||
|
|
||||||
/* Check the guest TLB. */
|
/* Check the guest TLB. */
|
||||||
gtlb_index = kvmppc_44x_dtlb_index(vcpu, eaddr);
|
gtlb_index = kvmppc_mmu_dtlb_index(vcpu, eaddr);
|
||||||
if (gtlb_index < 0) {
|
if (gtlb_index < 0) {
|
||||||
/* The guest didn't have a mapping for it. */
|
/* The guest didn't have a mapping for it. */
|
||||||
kvmppc_booke_queue_irqprio(vcpu, BOOKE_IRQPRIO_DTLB_MISS);
|
kvmppc_booke_queue_irqprio(vcpu, BOOKE_IRQPRIO_DTLB_MISS);
|
||||||
|
@ -337,7 +337,7 @@ int kvmppc_handle_exit(struct kvm_run *run, struct kvm_vcpu *vcpu,
|
||||||
r = RESUME_GUEST;
|
r = RESUME_GUEST;
|
||||||
|
|
||||||
/* Check the guest TLB. */
|
/* Check the guest TLB. */
|
||||||
gtlb_index = kvmppc_44x_itlb_index(vcpu, eaddr);
|
gtlb_index = kvmppc_mmu_itlb_index(vcpu, eaddr);
|
||||||
if (gtlb_index < 0) {
|
if (gtlb_index < 0) {
|
||||||
/* The guest didn't have a mapping for it. */
|
/* The guest didn't have a mapping for it. */
|
||||||
kvmppc_booke_queue_irqprio(vcpu, BOOKE_IRQPRIO_ITLB_MISS);
|
kvmppc_booke_queue_irqprio(vcpu, BOOKE_IRQPRIO_ITLB_MISS);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче