Anonymous Virtual Memory Area
include/mem/anon_vma.h View source View on GitHubStructs
Section titled “Structs”anon_vma
Section titled “anon_vma”struct anon_vma {
struct rbit tree;
struct anon_vma *root;
struct anon_vma *parent;
struct rwlock lock;
refcount_t refcount;
}; Functions
Section titled “Functions”anon_vma_alloc
Section titled “anon_vma_alloc”struct anon_vma * anon_vma_alloc(void); anon_vma_free
Section titled “anon_vma_free”void anon_vma_free(struct anon_vma *av); anon_vma_fork
Section titled “anon_vma_fork”enum errno anon_vma_fork(struct vma_range *child, struct vma_range *parent); anon_vma_read_lock
Section titled “anon_vma_read_lock”void anon_vma_read_lock(struct anon_vma *av); anon_vma_unlock
Section titled “anon_vma_unlock”void anon_vma_unlock(struct anon_vma *av); anon_vma_write_lock
Section titled “anon_vma_write_lock”void anon_vma_write_lock(struct anon_vma *av); anon_vma_clone
Section titled “anon_vma_clone”enum errno anon_vma_clone(struct vma_range *dst, struct vma_range *src); anon_vma_itree_first
Section titled “anon_vma_itree_first”struct anon_vma_chain * anon_vma_itree_first(struct anon_vma *av, pgoff_t first, pgoff_t last); anon_vma_itree_next
Section titled “anon_vma_itree_next”struct anon_vma_chain * anon_vma_itree_next(struct anon_vma_chain *avc, pgoff_t first, pgoff_t last); vma_range_unlink_anon_vmas
Section titled “vma_range_unlink_anon_vmas”void vma_range_unlink_anon_vmas(struct vma_range *vma_range); anon_vma_is_root
Section titled “anon_vma_is_root”bool anon_vma_is_root(const struct anon_vma *av); anon_vma_get
Section titled “anon_vma_get”bool anon_vma_get(struct anon_vma *av); anon_vm_area_put
Section titled “anon_vm_area_put”void anon_vm_area_put(struct anon_vma *av);