|
@@ -87,10 +87,6 @@ int __hash_page_huge(unsigned long ea, unsigned long access, unsigned long vsid,
|
|
|
|
|
|
pa = pte_pfn(__pte(old_pte)) << PAGE_SHIFT;
|
|
|
|
|
|
-repeat:
|
|
|
- hpte_group = ((hash & htab_hash_mask) *
|
|
|
- HPTES_PER_GROUP) & ~0x7UL;
|
|
|
-
|
|
|
/* clear HPTE slot informations in new PTE */
|
|
|
#ifdef CONFIG_PPC_64K_PAGES
|
|
|
new_pte = (new_pte & ~_PAGE_HPTEFLAGS) | _PAGE_HPTE_SUB0;
|
|
@@ -101,6 +97,10 @@ repeat:
|
|
|
rflags |= (new_pte & (_PAGE_WRITETHRU | _PAGE_NO_CACHE |
|
|
|
_PAGE_COHERENT | _PAGE_GUARDED));
|
|
|
|
|
|
+repeat:
|
|
|
+ hpte_group = ((hash & htab_hash_mask) *
|
|
|
+ HPTES_PER_GROUP) & ~0x7UL;
|
|
|
+
|
|
|
/* Insert into the hash table, primary slot */
|
|
|
slot = ppc_md.hpte_insert(hpte_group, vpn, pa, rflags, 0,
|
|
|
mmu_psize, ssize);
|