Searched refs:anon_vma (Results 1 - 21 of 21) sorted by relevance

/linux-master/mm/
H A Drmap.c30 * anon_vma->rwsem
45 * anon_vma->rwsem,mapping->i_mmap_rwsem (memory_failure, collect_procs_anon)
90 static inline struct anon_vma *anon_vma_alloc(void)
92 struct anon_vma *anon_vma; local
94 anon_vma = kmem_cache_alloc(anon_vma_cachep, GFP_KERNEL);
95 if (anon_vma) {
96 atomic_set(&anon_vma->refcount, 1);
97 anon_vma->num_children = 0;
98 anon_vma
110 anon_vma_free(struct anon_vma *anon_vma) argument
150 anon_vma_chain_link(struct vm_area_struct *vma, struct anon_vma_chain *avc, struct anon_vma *anon_vma) argument
189 struct anon_vma *anon_vma, *allocated; local
243 lock_anon_vma_root(struct anon_vma *root, struct anon_vma *anon_vma) argument
286 struct anon_vma *anon_vma; local
337 struct anon_vma *anon_vma; local
406 struct anon_vma *anon_vma = avc->anon_vma; local
440 struct anon_vma *anon_vma = avc->anon_vma; local
453 struct anon_vma *anon_vma = data; local
501 struct anon_vma *anon_vma = NULL; local
546 struct anon_vma *anon_vma = NULL; local
1199 void *anon_vma = vma->anon_vma; local
1223 struct anon_vma *anon_vma = vma->anon_vma; local
2523 __put_anon_vma(struct anon_vma *anon_vma) argument
2535 struct anon_vma *anon_vma; local
2577 struct anon_vma *anon_vma; local
[all...]
H A Dmmap.c291 struct anon_vma *anon_vma = vma->anon_vma; local
315 if (anon_vma) {
316 anon_vma_lock_read(anon_vma);
319 anon_vma_unlock_read(anon_vma);
336 * vma has some anon_vma assigned, and is already inserted on that
337 * anon_vma's interval trees.
340 * vma must be removed from the anon_vma's interval trees using
347 * the root anon_vma'
772 can_vma_merge_before(struct vm_area_struct *vma, unsigned long vm_flags, struct anon_vma *anon_vma, struct file *file, pgoff_t vm_pgoff, struct vm_userfaultfd_ctx vm_userfaultfd_ctx, struct anon_vma_name *anon_name) argument
795 can_vma_merge_after(struct vm_area_struct *vma, unsigned long vm_flags, struct anon_vma *anon_vma, struct file *file, pgoff_t vm_pgoff, struct vm_userfaultfd_ctx vm_userfaultfd_ctx, struct anon_vma_name *anon_name) argument
870 struct anon_vma *anon_vma = src->anon_vma; local
1099 struct anon_vma *anon_vma = READ_ONCE(old->anon_vma); local
1117 struct anon_vma *anon_vma = NULL; local
3707 vm_lock_anon_vma(struct mm_struct *mm, struct anon_vma *anon_vma) argument
3842 vm_unlock_anon_vma(struct anon_vma *anon_vma) argument
[all...]
H A Dmigrate.c1045 struct anon_vma *anon_vma)
1047 dst->private = (void *)anon_vma + old_page_state;
1052 struct anon_vma **anon_vmap)
1056 *anon_vmap = (struct anon_vma *)(private & ~PAGE_OLD_STATES);
1064 struct anon_vma *anon_vma,
1070 /* Drop an anon_vma reference if we took one */
1071 if (anon_vma)
1072 put_anon_vma(anon_vma);
1043 __migrate_folio_record(struct folio *dst, int old_page_state, struct anon_vma *anon_vma) argument
1062 migrate_folio_undo_src(struct folio *src, int page_was_mapped, struct anon_vma *anon_vma, bool locked, struct list_head *ret) argument
1118 struct anon_vma *anon_vma = NULL; local
1279 struct anon_vma *anon_vma = NULL; local
1376 struct anon_vma *anon_vma = NULL; local
1841 struct anon_vma *anon_vma = NULL; local
[all...]
H A Dksm.c191 * @anon_vma: pointer to anon_vma for this mm,address, when in stable tree
205 struct anon_vma *anon_vma; /* when stable */ member in union:ksm_rmap_item::__anon119
745 if (!vma || !(vma->vm_flags & VM_MERGEABLE) || !vma->anon_vma)
758 * to undo, we also need to drop a reference to the anon_vma.
760 put_anon_vma(rmap_item->anon_vma);
870 put_anon_vma(rmap_item->anon_vma);
1022 put_anon_vma(rmap_item->anon_vma);
1226 if (!(vma->vm_flags & VM_MERGEABLE) || !vma->anon_vma)
3060 struct anon_vma *anon_vma = folio_anon_vma(folio); local
3124 struct anon_vma *anon_vma = rmap_item->anon_vma; local
[all...]
H A Ddebug.c162 "prot %lx anon_vma %px vm_ops %px\n"
167 vma->anon_vma, vma->vm_ops, vma->vm_pgoff,
H A Dmremap.c109 if (vma->anon_vma)
110 anon_vma_lock_write(vma->anon_vma);
115 if (vma->anon_vma)
116 anon_vma_unlock_write(vma->anon_vma);
149 * When need_rmap_locks is true, we take the i_mmap_rwsem and anon_vma
773 * anon_vma links of the old vma is no longer needed after its page
H A Dinternal.h781 struct anon_vma *folio_anon_vma(struct folio *folio);
1425 struct anon_vma *anon_vma;
H A Dhuge_memory.c185 * though anon_vma is not initialized yet.
187 * Allow page fault since anon_vma may be not initialized until
190 if (!vma->anon_vma)
1537 VM_BUG_ON_VMA(!vma->anon_vma, vma);
2108 struct anon_vma *src_anon_vma;
2161 * split_huge_page walks the anon_vma chain without the page
2162 * lock. Serialize against it with the anon_vma lock, the page
2999 struct anon_vma *anon_vma = NULL; local
3049 * prevent the anon_vma disappearin
[all...]
H A Dkhugepaged.c923 if (expect_anon && (!(*vmap)->anon_vma || !vma_is_anonymous(*vmap)))
1130 * handled by the anon_vma lock + PG_lock.
1145 anon_vma_lock_write(vma->anon_vma);
1186 anon_vma_unlock_write(vma->anon_vma);
1191 * All pages are isolated and locked so anon_vma rmap
1194 anon_vma_unlock_write(vma->anon_vma);
1691 * Check vma->anon_vma to exclude MAP_PRIVATE mappings that
1695 if (READ_ONCE(vma->anon_vma))
1731 * must remain empty; and we have already skipped anon_vma
1735 * repeating the anon_vma chec
[all...]
H A Dmprotect.c615 * anon_vma has yet to be assigned.
633 !vma->anon_vma) {
H A Dutil.c767 struct anon_vma *folio_anon_vma(struct folio *folio)
H A Duserfaultfd.c66 * -ENOMEM if anon_vma couldn't be allocated.
76 * We know we're going to need to use anon_vma, so check
79 if (!(vma->vm_flags & VM_SHARED) && unlikely(!vma->anon_vma))
1143 struct anon_vma *src_anon_vma = NULL;
1215 * Pin and lock both source folio and anon_vma. Since we are in
1278 * folio_referenced walks the anon_vma chain
1280 * the anon_vma lock, the folio lock is not enough.
1586 * If there's any rmap walk that is taking the anon_vma locks without
1589 * has changed after taking the anon_vma lock. If it changed they
1590 * should release the lock and retry obtaining a new anon_vma, becaus
[all...]
H A Dmemory.c531 pr_alert("addr:%px vm_flags:%08lx anon_vma:%px mapping:%px index:%lx\n",
532 (void *)addr, vma->vm_flags, vma->anon_vma, mapping, index);
1090 * protected by mmap_lock-less collapse skipping areas with anon_vma
1091 * (whereas vma_needs_copy() skips areas without anon_vma). A rework
1328 if (src_vma->anon_vma)
3223 * If this vma does not already have an associated anon_vma and we are
3226 * determine if this VMA can share its anon_vma, and that's not safe to
3237 if (likely(vma->anon_vma))
H A Dmemory-failure.c612 struct anon_vma *av;
H A Dswapfile.c2061 if (vma->anon_vma) {
/linux-master/include/linux/
H A Drmap.h18 * The anon_vma heads a list of private "related" vmas, to scan if
19 * an anonymous page pointing to this anon_vma needs to be unmapped:
24 * directly to a vma: instead it points to an anon_vma, on whose list
28 * the anon_vma object itself: we're guaranteed no page can be
29 * pointing to this anon_vma once its vma list is empty.
31 struct anon_vma { struct
32 struct anon_vma *root; /* Root of this anon_vma tree */
35 * The refcount is taken on an anon_vma when there is no
39 * anon_vma i
84 struct anon_vma *anon_vma; member in struct:anon_vma_chain
106 get_anon_vma(struct anon_vma *anon_vma) argument
113 put_anon_vma(struct anon_vma *anon_vma) argument
119 anon_vma_lock_write(struct anon_vma *anon_vma) argument
124 anon_vma_trylock_write(struct anon_vma *anon_vma) argument
129 anon_vma_unlock_write(struct anon_vma *anon_vma) argument
134 anon_vma_lock_read(struct anon_vma *anon_vma) argument
139 anon_vma_trylock_read(struct anon_vma *anon_vma) argument
144 anon_vma_unlock_read(struct anon_vma *anon_vma) argument
[all...]
H A Dmm_types.h278 * @mapping: The file this page belongs to, or refers to the anon_vma for
707 * A file's MAP_PRIVATE vma can be in both i_mmap tree and anon_vma
710 * or brk vma (with NULL file) can only be in an anon_vma list.
714 struct anon_vma *anon_vma; /* Serialized by page_table_lock */ member in struct:vm_area_struct
H A Dmm.h36 struct anon_vma;
3323 extern struct anon_vma *find_mergeable_anon_vma(struct vm_area_struct *);
/linux-master/fs/
H A Dcoredump.c1127 if ((!IS_ENABLED(CONFIG_MMU) || vma->anon_vma) && FILTER(ANON_PRIVATE))
/linux-master/kernel/
H A Dfork.c710 * Don't prepare anon_vma until fault since we don't
713 tmp->anon_vma = NULL;
/linux-master/security/selinux/
H A Dhooks.c3857 } else if (vma->vm_file && vma->anon_vma) {

Completed in 522 milliseconds