Loading arch/powerpc/include/asm/kvm_host.h +2 −0 Original line number Diff line number Diff line Loading @@ -418,7 +418,9 @@ struct kvm_vcpu_arch { ulong mcsrr1; ulong mcsr; u32 dec; #ifdef CONFIG_BOOKE u32 decar; #endif u32 tbl; u32 tbu; u32 tcr; Loading arch/powerpc/kvm/booke.c +5 −0 Original line number Diff line number Diff line Loading @@ -1267,6 +1267,11 @@ void kvmppc_decrementer_func(unsigned long data) { struct kvm_vcpu *vcpu = (struct kvm_vcpu *)data; if (vcpu->arch.tcr & TCR_ARE) { vcpu->arch.dec = vcpu->arch.decar; kvmppc_emulate_dec(vcpu); } kvmppc_set_tsr_bits(vcpu, TSR_DIS); } Loading arch/powerpc/kvm/booke_emulate.c +3 −0 Original line number Diff line number Diff line Loading @@ -129,6 +129,9 @@ int kvmppc_booke_emulate_mtspr(struct kvm_vcpu *vcpu, int sprn, ulong spr_val) kvmppc_set_tcr(vcpu, spr_val); break; case SPRN_DECAR: vcpu->arch.decar = spr_val; break; /* * Note: SPRG4-7 are user-readable. * These values are loaded into the real SPRGs when resuming the Loading arch/powerpc/kvm/e500_emulate.c +3 −0 Original line number Diff line number Diff line Loading @@ -269,6 +269,9 @@ int kvmppc_core_emulate_mfspr(struct kvm_vcpu *vcpu, int sprn, ulong *spr_val) *spr_val = vcpu->arch.shared->mas7_3 >> 32; break; #endif case SPRN_DECAR: *spr_val = vcpu->arch.decar; break; case SPRN_TLB0CFG: *spr_val = vcpu->arch.tlbcfg[0]; break; Loading Loading
arch/powerpc/include/asm/kvm_host.h +2 −0 Original line number Diff line number Diff line Loading @@ -418,7 +418,9 @@ struct kvm_vcpu_arch { ulong mcsrr1; ulong mcsr; u32 dec; #ifdef CONFIG_BOOKE u32 decar; #endif u32 tbl; u32 tbu; u32 tcr; Loading
arch/powerpc/kvm/booke.c +5 −0 Original line number Diff line number Diff line Loading @@ -1267,6 +1267,11 @@ void kvmppc_decrementer_func(unsigned long data) { struct kvm_vcpu *vcpu = (struct kvm_vcpu *)data; if (vcpu->arch.tcr & TCR_ARE) { vcpu->arch.dec = vcpu->arch.decar; kvmppc_emulate_dec(vcpu); } kvmppc_set_tsr_bits(vcpu, TSR_DIS); } Loading
arch/powerpc/kvm/booke_emulate.c +3 −0 Original line number Diff line number Diff line Loading @@ -129,6 +129,9 @@ int kvmppc_booke_emulate_mtspr(struct kvm_vcpu *vcpu, int sprn, ulong spr_val) kvmppc_set_tcr(vcpu, spr_val); break; case SPRN_DECAR: vcpu->arch.decar = spr_val; break; /* * Note: SPRG4-7 are user-readable. * These values are loaded into the real SPRGs when resuming the Loading
arch/powerpc/kvm/e500_emulate.c +3 −0 Original line number Diff line number Diff line Loading @@ -269,6 +269,9 @@ int kvmppc_core_emulate_mfspr(struct kvm_vcpu *vcpu, int sprn, ulong *spr_val) *spr_val = vcpu->arch.shared->mas7_3 >> 32; break; #endif case SPRN_DECAR: *spr_val = vcpu->arch.decar; break; case SPRN_TLB0CFG: *spr_val = vcpu->arch.tlbcfg[0]; break; Loading