KVM: powerpc: Map guest userspace with TID=0 mappings
[firefly-linux-kernel-4.4.55.git] / arch / powerpc / include / asm / kvm_ppc.h
index 8e7e42959903ad1cd5588caa3ed29aa81daa4cec..8931ba729d2b519ec4d4efb1d0851301d96e1d3a 100644 (file)
@@ -64,6 +64,7 @@ extern void kvmppc_mmu_map(struct kvm_vcpu *vcpu, u64 gvaddr, gfn_t gfn,
 extern void kvmppc_mmu_invalidate(struct kvm_vcpu *vcpu, gva_t eaddr,
                                   gva_t eend, u32 asid);
 extern void kvmppc_mmu_priv_switch(struct kvm_vcpu *vcpu, int usermode);
+extern void kvmppc_mmu_switch_pid(struct kvm_vcpu *vcpu, u32 pid);
 
 /* XXX Book E specific */
 extern void kvmppc_tlbe_set_modified(struct kvm_vcpu *vcpu, unsigned int i);
@@ -95,4 +96,12 @@ static inline void kvmppc_set_msr(struct kvm_vcpu *vcpu, u32 new_msr)
                kvm_vcpu_block(vcpu);
 }
 
+static inline void kvmppc_set_pid(struct kvm_vcpu *vcpu, u32 new_pid)
+{
+       if (vcpu->arch.pid != new_pid) {
+               vcpu->arch.pid = new_pid;
+               vcpu->arch.swap_pid = 1;
+       }
+}
+
 #endif /* __POWERPC_KVM_PPC_H__ */