Lines Matching defs:mm
22 void subpage_prot_free(struct mm_struct *mm)
24 struct subpage_prot_table *spt = mm_ctx_subpage_prot(&mm->context);
53 static void hpte_flush_range(struct mm_struct *mm, unsigned long addr,
63 pgd = pgd_offset(mm, addr);
73 pte = pte_offset_map_lock(mm, pmd, addr, &ptl);
78 pte_update(mm, addr, pte, 0, 0, 0);
92 struct mm_struct *mm = current->mm;
99 mmap_write_lock(mm);
101 spt = mm_ctx_subpage_prot(&mm->context);
130 hpte_flush_range(mm, addr, nw);
134 mmap_write_unlock(mm);
151 static void subpage_mark_vma_nohuge(struct mm_struct *mm, unsigned long addr,
155 VMA_ITERATOR(vmi, mm, addr);
167 static void subpage_mark_vma_nohuge(struct mm_struct *mm, unsigned long addr,
187 struct mm_struct *mm = current->mm;
200 addr >= mm->task_size || len >= mm->task_size ||
201 addr + len > mm->task_size)
204 if (is_hugepage_only_range(mm, addr, len))
216 mmap_write_lock(mm);
218 spt = mm_ctx_subpage_prot(&mm->context);
229 mm->context.hash_context->spt = spt;
232 subpage_mark_vma_nohuge(mm, addr, len);
258 demote_segment_4k(mm, addr);
266 mmap_write_unlock(mm);
270 mmap_write_lock(mm);
273 hpte_flush_range(mm, addr, nw);
279 mmap_write_unlock(mm);