Searched refs:anon_vma (Results 1 – 6 of 6) sorted by relevance
184 struct anon_vma_t *anon_vma = (struct anon_vma_t *)kmalloc(sizeof(struct anon_vma_t), 0); in __anon_vma_create_alloc() local185 if (unlikely(anon_vma == NULL)) in __anon_vma_create_alloc()187 memset(anon_vma, 0, sizeof(struct anon_vma_t)); in __anon_vma_create_alloc()189 list_init(&anon_vma->vma_list); in __anon_vma_create_alloc()190 semaphore_init(&anon_vma->sem, 1); in __anon_vma_create_alloc()199 page->anon_vma = anon_vma; in __anon_vma_create_alloc()203 page->anon_vma = anon_vma; in __anon_vma_create_alloc()205 anon_vma->page = page; in __anon_vma_create_alloc()207 return anon_vma; in __anon_vma_create_alloc()217 int __anon_vma_add(struct anon_vma_t *anon_vma, struct vm_area_struct *vma) in __anon_vma_add() argument[all …]
51 int __anon_vma_free(struct anon_vma_t *anon_vma);60 int __anon_vma_add(struct anon_vma_t *anon_vma, struct vm_area_struct *vma);
108 struct anon_vma_t *anon_vma; // 本页对应的anon_vma member130 struct anon_vma_t * anon_vma; // 属于的anon_vma member
372 if (unlikely(vma->anon_vma == NULL || vma->anon_vma->page == NULL)) in mm_map_vma()375 pg = vma->anon_vma->page; in mm_map_vma()380 if (unlikely(pg->anon_vma == NULL)) // 若页面不存在anon_vma,则为页面创建anon_vma in mm_map_vma()383 if (unlikely(pg->anon_vma == NULL)) in mm_map_vma()389 __anon_vma_add(pg->anon_vma, vma); in mm_map_vma()521 struct anon_vma_t *anon = vma->anon_vma; in mm_unmap_vma()567 if (vma->anon_vma != NULL) in mm_unmap()
277 page->anon_vma = NULL; in page_init()
37   该函数会对MMIO的VMA的映射做出特殊处理。即:创建`Page`结构体以及对应的`anon_vma`. 然后会将对应的物理地址,填写到页表之中。