Lines Matching refs:hptep

360 	__be64 *hptep;  in kvmppc_mmu_book3s_64_hv_xlate()  local
386 hptep = (__be64 *)(kvm->arch.hpt.virt + (index << 4)); in kvmppc_mmu_book3s_64_hv_xlate()
387 v = orig_v = be64_to_cpu(hptep[0]) & ~HPTE_V_HVLOCK; in kvmppc_mmu_book3s_64_hv_xlate()
389 v = hpte_new_to_old_v(v, be64_to_cpu(hptep[1])); in kvmppc_mmu_book3s_64_hv_xlate()
392 unlock_hpte(hptep, orig_v); in kvmppc_mmu_book3s_64_hv_xlate()
491 __be64 *hptep; in kvmppc_book3s_hv_page_fault() local
532 hptep = (__be64 *)(kvm->arch.hpt.virt + (index << 4)); in kvmppc_book3s_hv_page_fault()
535 while (!try_lock_hpte(hptep, HPTE_V_HVLOCK)) in kvmppc_book3s_hv_page_fault()
537 hpte[0] = be64_to_cpu(hptep[0]) & ~HPTE_V_HVLOCK; in kvmppc_book3s_hv_page_fault()
538 hpte[1] = be64_to_cpu(hptep[1]); in kvmppc_book3s_hv_page_fault()
540 unlock_hpte(hptep, hpte[0]); in kvmppc_book3s_hv_page_fault()
656 while (!try_lock_hpte(hptep, HPTE_V_HVLOCK)) in kvmppc_book3s_hv_page_fault()
658 hnow_v = be64_to_cpu(hptep[0]); in kvmppc_book3s_hv_page_fault()
659 hnow_r = be64_to_cpu(hptep[1]); in kvmppc_book3s_hv_page_fault()
695 if (be64_to_cpu(hptep[0]) & HPTE_V_VALID) { in kvmppc_book3s_hv_page_fault()
698 hptep[0] |= cpu_to_be64(HPTE_V_ABSENT); in kvmppc_book3s_hv_page_fault()
699 kvmppc_invalidate_hpte(kvm, hptep, index); in kvmppc_book3s_hv_page_fault()
701 r |= be64_to_cpu(hptep[1]) & (HPTE_R_R | HPTE_R_C); in kvmppc_book3s_hv_page_fault()
710 hptep[1] = cpu_to_be64(r); in kvmppc_book3s_hv_page_fault()
712 __unlock_hpte(hptep, hpte[0]); in kvmppc_book3s_hv_page_fault()
733 __unlock_hpte(hptep, be64_to_cpu(hptep[0])); in kvmppc_book3s_hv_page_fault()
807 __be64 *hptep = (__be64 *) (kvm->arch.hpt.virt + (i << 4)); in kvmppc_unmap_hpte() local
827 psize = kvmppc_actual_pgsz(be64_to_cpu(hptep[0]), ptel); in kvmppc_unmap_hpte()
828 if ((be64_to_cpu(hptep[0]) & HPTE_V_VALID) && in kvmppc_unmap_hpte()
830 hptep[0] |= cpu_to_be64(HPTE_V_ABSENT); in kvmppc_unmap_hpte()
831 kvmppc_invalidate_hpte(kvm, hptep, i); in kvmppc_unmap_hpte()
832 hptep[1] &= ~cpu_to_be64(HPTE_R_KEY_HI | HPTE_R_KEY_LO); in kvmppc_unmap_hpte()
834 rcbits = be64_to_cpu(hptep[1]) & (HPTE_R_R | HPTE_R_C); in kvmppc_unmap_hpte()
849 __be64 *hptep; in kvm_unmap_rmapp() local
866 hptep = (__be64 *) (kvm->arch.hpt.virt + (i << 4)); in kvm_unmap_rmapp()
867 if (!try_lock_hpte(hptep, HPTE_V_HVLOCK)) { in kvm_unmap_rmapp()
870 while (be64_to_cpu(hptep[0]) & HPTE_V_HVLOCK) in kvm_unmap_rmapp()
877 __unlock_hpte(hptep, be64_to_cpu(hptep[0])); in kvm_unmap_rmapp()
922 __be64 *hptep; in kvm_age_rmapp() local
940 hptep = (__be64 *) (kvm->arch.hpt.virt + (i << 4)); in kvm_age_rmapp()
944 if (!(be64_to_cpu(hptep[1]) & HPTE_R_R)) in kvm_age_rmapp()
947 if (!try_lock_hpte(hptep, HPTE_V_HVLOCK)) { in kvm_age_rmapp()
950 while (be64_to_cpu(hptep[0]) & HPTE_V_HVLOCK) in kvm_age_rmapp()
956 if ((be64_to_cpu(hptep[0]) & HPTE_V_VALID) && in kvm_age_rmapp()
957 (be64_to_cpu(hptep[1]) & HPTE_R_R)) { in kvm_age_rmapp()
958 kvmppc_clear_ref_hpte(kvm, hptep, i); in kvm_age_rmapp()
965 __unlock_hpte(hptep, be64_to_cpu(hptep[0])); in kvm_age_rmapp()
1044 __be64 *hptep; in kvm_test_clear_dirty_npages() local
1057 hptep = (__be64 *) (kvm->arch.hpt.virt + (i << 4)); in kvm_test_clear_dirty_npages()
1074 hptep1 = be64_to_cpu(hptep[1]); in kvm_test_clear_dirty_npages()
1079 if (!try_lock_hpte(hptep, HPTE_V_HVLOCK)) { in kvm_test_clear_dirty_npages()
1082 while (hptep[0] & cpu_to_be64(HPTE_V_HVLOCK)) in kvm_test_clear_dirty_npages()
1088 if (!(hptep[0] & cpu_to_be64(HPTE_V_VALID))) { in kvm_test_clear_dirty_npages()
1089 __unlock_hpte(hptep, be64_to_cpu(hptep[0])); in kvm_test_clear_dirty_npages()
1094 hptep[0] |= cpu_to_be64(HPTE_V_ABSENT); in kvm_test_clear_dirty_npages()
1095 kvmppc_invalidate_hpte(kvm, hptep, i); in kvm_test_clear_dirty_npages()
1096 v = be64_to_cpu(hptep[0]); in kvm_test_clear_dirty_npages()
1097 r = be64_to_cpu(hptep[1]); in kvm_test_clear_dirty_npages()
1099 hptep[1] = cpu_to_be64(r & ~HPTE_R_C); in kvm_test_clear_dirty_npages()
1112 __unlock_hpte(hptep, v); in kvm_test_clear_dirty_npages()
1238 __be64 *hptep, *new_hptep; in resize_hpt_rehash_hpte() local
1246 hptep = (__be64 *)(old->virt + (idx << 4)); in resize_hpt_rehash_hpte()
1251 vpte = be64_to_cpu(hptep[0]); in resize_hpt_rehash_hpte()
1255 while (!try_lock_hpte(hptep, HPTE_V_HVLOCK)) in resize_hpt_rehash_hpte()
1258 vpte = be64_to_cpu(hptep[0]); in resize_hpt_rehash_hpte()
1266 rpte = be64_to_cpu(hptep[1]); in resize_hpt_rehash_hpte()
1298 vpte = be64_to_cpu(hptep[0]); in resize_hpt_rehash_hpte()
1306 rpte = be64_to_cpu(hptep[1]); in resize_hpt_rehash_hpte()
1381 unlock_hpte(hptep, vpte); in resize_hpt_rehash_hpte()