Searched refs:hpte (Results 1 – 6 of 6) sorted by relevance
/linux-6.12.1/arch/powerpc/kvm/ |
D | book3s_hv_rm_mmu.c | 190 __be64 *hpte; in kvmppc_do_h_enter() local 307 hpte = (__be64 *)(kvm->arch.hpt.virt + (pte_index << 4)); in kvmppc_do_h_enter() 309 if ((be64_to_cpu(*hpte) & HPTE_V_VALID) == 0 && in kvmppc_do_h_enter() 310 try_lock_hpte(hpte, HPTE_V_HVLOCK | HPTE_V_VALID | in kvmppc_do_h_enter() 313 hpte += 2; in kvmppc_do_h_enter() 322 hpte -= 16; in kvmppc_do_h_enter() 325 while (!try_lock_hpte(hpte, HPTE_V_HVLOCK)) in kvmppc_do_h_enter() 327 pte = be64_to_cpu(hpte[0]); in kvmppc_do_h_enter() 330 __unlock_hpte(hpte, pte); in kvmppc_do_h_enter() 331 hpte += 2; in kvmppc_do_h_enter() [all …]
|
D | book3s_pr_papr.c | 41 __be64 *hpte; in kvmppc_h_pr_enter() local 53 hpte = pteg; in kvmppc_h_pr_enter() 60 if ((be64_to_cpu(*hpte) & HPTE_V_VALID) == 0) in kvmppc_h_pr_enter() 62 hpte += 2; in kvmppc_h_pr_enter() 65 hpte += i * 2; in kvmppc_h_pr_enter() 66 if (*hpte & HPTE_V_VALID) in kvmppc_h_pr_enter() 70 hpte[0] = cpu_to_be64(kvmppc_get_gpr(vcpu, 6)); in kvmppc_h_pr_enter() 71 hpte[1] = cpu_to_be64(kvmppc_get_gpr(vcpu, 7)); in kvmppc_h_pr_enter() 74 if (copy_to_user((void __user *)pteg_addr, hpte, HPTE_SIZE)) in kvmppc_h_pr_enter()
|
D | book3s_64_mmu_hv.c | 510 unsigned long hpte[3], r; in kvmppc_book3s_hv_page_fault() local 559 hpte[0] = be64_to_cpu(hptep[0]) & ~HPTE_V_HVLOCK; in kvmppc_book3s_hv_page_fault() 560 hpte[1] = be64_to_cpu(hptep[1]); in kvmppc_book3s_hv_page_fault() 561 hpte[2] = r = rev->guest_rpte; in kvmppc_book3s_hv_page_fault() 562 unlock_hpte(hptep, hpte[0]); in kvmppc_book3s_hv_page_fault() 566 hpte[0] = hpte_new_to_old_v(hpte[0], hpte[1]); in kvmppc_book3s_hv_page_fault() 567 hpte[1] = hpte_new_to_old_r(hpte[1]); in kvmppc_book3s_hv_page_fault() 569 if (hpte[0] != vcpu->arch.pgfault_hpte[0] || in kvmppc_book3s_hv_page_fault() 570 hpte[1] != vcpu->arch.pgfault_hpte[1]) in kvmppc_book3s_hv_page_fault() 574 psize = kvmppc_actual_pgsz(hpte[0], r); in kvmppc_book3s_hv_page_fault() [all …]
|
/linux-6.12.1/arch/powerpc/include/asm/ |
D | kvm_book3s_64.h | 173 static inline long try_lock_hpte(__be64 *hpte, unsigned long bits) in try_lock_hpte() argument 195 : "r" (hpte), "r" (be_bits), "r" (be_lockbit) in try_lock_hpte() 200 static inline void unlock_hpte(__be64 *hpte, unsigned long hpte_v) in unlock_hpte() argument 204 hpte[0] = cpu_to_be64(hpte_v); in unlock_hpte() 208 static inline void __unlock_hpte(__be64 *hpte, unsigned long hpte_v) in __unlock_hpte() argument 211 hpte[0] = cpu_to_be64(hpte_v); in __unlock_hpte()
|
/linux-6.12.1/arch/powerpc/mm/book3s64/ |
D | hash_native.c | 664 static void hpte_decode(struct hash_pte *hpte, unsigned long slot, in hpte_decode() argument 668 unsigned long hpte_v = be64_to_cpu(hpte->v); in hpte_decode() 669 unsigned long hpte_r = be64_to_cpu(hpte->r); in hpte_decode()
|
/linux-6.12.1/Documentation/admin-guide/ |
D | kernel-parameters.txt | 568 firmware feature for flushing multiple hpte entries
|