pgtable-generic.c (fcdcc79628a1919bde9acf239e364f65bab6327c) | pgtable-generic.c (6a6ac72fd6ea32594b316513e1826c3f6db4cc93) |
---|---|
1/* 2 * mm/pgtable-generic.c 3 * 4 * Generic pgtable methods declared in asm-generic/pgtable.h 5 * 6 * Copyright (C) 2010 Linus Torvalds 7 */ 8 --- 181 unchanged lines hidden (view full) --- 190 * pmd and hugepage pte format are same. So we could 191 * use the same function. 192 */ 193 pmd_t pmd; 194 195 VM_BUG_ON(address & ~HPAGE_PMD_MASK); 196 VM_BUG_ON(pmd_trans_huge(*pmdp)); 197 pmd = pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp); | 1/* 2 * mm/pgtable-generic.c 3 * 4 * Generic pgtable methods declared in asm-generic/pgtable.h 5 * 6 * Copyright (C) 2010 Linus Torvalds 7 */ 8 --- 181 unchanged lines hidden (view full) --- 190 * pmd and hugepage pte format are same. So we could 191 * use the same function. 192 */ 193 pmd_t pmd; 194 195 VM_BUG_ON(address & ~HPAGE_PMD_MASK); 196 VM_BUG_ON(pmd_trans_huge(*pmdp)); 197 pmd = pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp); |
198 flush_pmd_tlb_range(vma, address, address + HPAGE_PMD_SIZE); | 198 199 /* collapse entails shooting down ptes not pmd */ 200 flush_tlb_range(vma, address, address + HPAGE_PMD_SIZE); |
199 return pmd; 200} 201#endif 202#endif /* CONFIG_TRANSPARENT_HUGEPAGE */ | 201 return pmd; 202} 203#endif 204#endif /* CONFIG_TRANSPARENT_HUGEPAGE */ |