taglinefilesource code
mpnt284fs/exec.cstruct vm_area_struct *mpnt;
mpnt294fs/exec.cmpnt = (struct vm_area_struct *)kmalloc(sizeof(*mpnt), GFP_KERNEL);
mpnt295fs/exec.cif (mpnt) {
mpnt296fs/exec.cmpnt->vm_mm = current->mm;
mpnt297fs/exec.cmpnt->vm_start = PAGE_MASK & (unsigned long) p;
mpnt298fs/exec.cmpnt->vm_end = STACK_TOP;
mpnt299fs/exec.cmpnt->vm_page_prot = PAGE_COPY;
mpnt300fs/exec.cmpnt->vm_flags = VM_STACK_FLAGS;
mpnt301fs/exec.cmpnt->vm_ops = NULL;
mpnt302fs/exec.cmpnt->vm_offset = 0;
mpnt303fs/exec.cmpnt->vm_inode = NULL;
mpnt304fs/exec.cmpnt->vm_pte = 0;
mpnt305fs/exec.cinsert_vm_struct(current, mpnt);
mpnt306fs/exec.ccurrent->mm->total_vm = (mpnt->vm_end - mpnt->vm_start) >> PAGE_SHIFT;
mpnt129fs/namei.cstruct vm_area_struct * mpnt;
mpnt132fs/namei.cfor(mpnt = p->mm->mmap; mpnt; mpnt = mpnt->vm_next) {
mpnt133fs/namei.cif (inode != mpnt->vm_inode)
mpnt135fs/namei.cif (mpnt->vm_flags & VM_DENYWRITE)
mpnt80kernel/fork.cstruct vm_area_struct * mpnt, **p, *tmp;
mpnt84kernel/fork.cfor (mpnt = current->mm->mmap ; mpnt ; mpnt = mpnt->vm_next) {
mpnt90kernel/fork.c*tmp = *mpnt;
mpnt98kernel/fork.cmpnt->vm_next_share = tmp;
mpnt99kernel/fork.ctmp->vm_prev_share = mpnt;
mpnt795mm/memory.cstruct vm_area_struct * mpnt;
mpnt800mm/memory.cmpnt = inode->i_mmap;
mpnt802mm/memory.cunsigned long start = mpnt->vm_start;
mpnt803mm/memory.cunsigned long len = mpnt->vm_end - start;
mpnt807mm/memory.cif (mpnt->vm_offset >= offset) {
mpnt808mm/memory.czap_page_range(mpnt->vm_mm, start, len);
mpnt812mm/memory.cdiff = offset - mpnt->vm_offset;
mpnt819mm/memory.cpartial_clear(mpnt, start);
mpnt822mm/memory.czap_page_range(mpnt->vm_mm, start, len);
mpnt823mm/memory.c} while ((mpnt = mpnt->vm_next_share) != inode->i_mmap);
mpnt614mm/mmap.cstruct vm_area_struct *mpnt;
mpnt649mm/mmap.cmpnt = (struct vm_area_struct *)kmalloc(sizeof(*mpnt), GFP_KERNEL);
mpnt651mm/mmap.cif (!mpnt)
mpnt653mm/mmap.c*mpnt = *area;
mpnt654mm/mmap.cmpnt->vm_offset += (end - area->vm_start);
mpnt655mm/mmap.cmpnt->vm_start = end;
mpnt656mm/mmap.cif (mpnt->vm_inode)
mpnt657mm/mmap.cmpnt->vm_inode->i_count++;
mpnt658mm/mmap.cif (mpnt->vm_ops && mpnt->vm_ops->open)
mpnt659mm/mmap.cmpnt->vm_ops->open(mpnt);
mpnt661mm/mmap.cinsert_vm_struct(current, mpnt);
mpnt665mm/mmap.cmpnt = (struct vm_area_struct *)kmalloc(sizeof(*mpnt), GFP_KERNEL);
mpnt666mm/mmap.cif (!mpnt)
mpnt668mm/mmap.c*mpnt = *area;
mpnt669mm/mmap.cif (mpnt->vm_ops && mpnt->vm_ops->open)
mpnt670mm/mmap.cmpnt->vm_ops->open(mpnt);
mpnt675mm/mmap.cinsert_vm_struct(current, mpnt);
mpnt691mm/mmap.cstruct vm_area_struct *mpnt, *prev, *next, **npp, *free;
mpnt705mm/mmap.cmpnt = find_vma(current, addr);
mpnt706mm/mmap.cif (!mpnt)
mpnt708mm/mmap.cavl_neighbours(mpnt, current->mm->mmap_avl, &prev, &next);
mpnt714mm/mmap.cfor ( ; mpnt && mpnt->vm_start < addr+len; mpnt = *npp) {
mpnt715mm/mmap.c*npp = mpnt->vm_next;
mpnt716mm/mmap.cmpnt->vm_next = free;
mpnt717mm/mmap.cfree = mpnt;
mpnt718mm/mmap.cavl_remove(mpnt, &current->mm->mmap_avl);
mpnt733mm/mmap.cmpnt = free;
mpnt736mm/mmap.cremove_shared_vm_struct(mpnt);
mpnt738mm/mmap.cst = addr < mpnt->vm_start ? mpnt->vm_start : addr;
mpnt740mm/mmap.cend = end > mpnt->vm_end ? mpnt->vm_end : end;
mpnt742mm/mmap.cif (mpnt->vm_ops && mpnt->vm_ops->unmap)
mpnt743mm/mmap.cmpnt->vm_ops->unmap(mpnt, st, end-st);
mpnt745mm/mmap.cunmap_fixup(mpnt, st, end-st);
mpnt746mm/mmap.ckfree(mpnt);
mpnt766mm/mmap.cstruct vm_area_struct * mpnt;
mpnt768mm/mmap.cmpnt = mm->mmap;
mpnt774mm/mmap.cwhile (mpnt) {
mpnt775mm/mmap.cstruct vm_area_struct * next = mpnt->vm_next;
mpnt776mm/mmap.cif (mpnt->vm_ops) {
mpnt777mm/mmap.cif (mpnt->vm_ops->unmap)
mpnt778mm/mmap.cmpnt->vm_ops->unmap(mpnt, mpnt->vm_start, mpnt->vm_end-mpnt->vm_start);
mpnt779mm/mmap.cif (mpnt->vm_ops->close)
mpnt780mm/mmap.cmpnt->vm_ops->close(mpnt);
mpnt782mm/mmap.cremove_shared_vm_struct(mpnt);
mpnt783mm/mmap.czap_page_range(mm, mpnt->vm_start, mpnt->vm_end-mpnt->vm_start);
mpnt784mm/mmap.cif (mpnt->vm_inode)
mpnt785mm/mmap.ciput(mpnt->vm_inode);
mpnt786mm/mmap.ckfree(mpnt);
mpnt787mm/mmap.cmpnt = next;
mpnt801mm/mmap.cstruct vm_area_struct **p, *mpnt;
mpnt804mm/mmap.cwhile ((mpnt = *p) != NULL) {
mpnt805mm/mmap.cif (mpnt->vm_start > vmp->vm_start)
mpnt807mm/mmap.cif (mpnt->vm_end > vmp->vm_start)
mpnt809mm/mmap.cp = &mpnt->vm_next;
mpnt811mm/mmap.cvmp->vm_next = mpnt;
mpnt843mm/mmap.cvoid remove_shared_vm_struct(struct vm_area_struct *mpnt)
mpnt845mm/mmap.cstruct inode * inode = mpnt->vm_inode;
mpnt850mm/mmap.cif (mpnt->vm_next_share == mpnt) {
mpnt851mm/mmap.cif (inode->i_mmap != mpnt)
mpnt857mm/mmap.cif (inode->i_mmap == mpnt)
mpnt858mm/mmap.cinode->i_mmap = mpnt->vm_next_share;
mpnt860mm/mmap.cmpnt->vm_prev_share->vm_next_share = mpnt->vm_next_share;
mpnt861mm/mmap.cmpnt->vm_next_share->vm_prev_share = mpnt->vm_prev_share;
mpnt873mm/mmap.cstruct vm_area_struct *prev, *mpnt, *next;
mpnt875mm/mmap.cmpnt = find_vma(task, start_addr);
mpnt876mm/mmap.cif (!mpnt)
mpnt878mm/mmap.cavl_neighbours(mpnt, task->mm->mmap_avl, &prev, &next);
mpnt882mm/mmap.cprev = mpnt;
mpnt883mm/mmap.cmpnt = next;
mpnt889mm/mmap.cfor ( ; mpnt && prev->vm_start < end_addr ; prev = mpnt, mpnt = next) {
mpnt891mm/mmap.cprintk("looping in merge_segments, mpnt=0x%lX\n", (unsigned long) mpnt);
mpnt894mm/mmap.cnext = mpnt->vm_next;
mpnt899mm/mmap.cif (mpnt->vm_inode != prev->vm_inode)
mpnt901mm/mmap.cif (mpnt->vm_pte != prev->vm_pte)
mpnt903mm/mmap.cif (mpnt->vm_ops != prev->vm_ops)
mpnt905mm/mmap.cif (mpnt->vm_flags != prev->vm_flags)
mpnt907mm/mmap.cif (prev->vm_end != mpnt->vm_start)
mpnt912mm/mmap.cif ((mpnt->vm_inode != NULL) || (mpnt->vm_flags & VM_SHM)) {
mpnt913mm/mmap.cif (prev->vm_offset + prev->vm_end - prev->vm_start != mpnt->vm_offset)
mpnt922mm/mmap.cavl_remove(mpnt, &task->mm->mmap_avl);
mpnt923mm/mmap.cprev->vm_end = mpnt->vm_end;
mpnt924mm/mmap.cprev->vm_next = mpnt->vm_next;
mpnt925mm/mmap.cif (mpnt->vm_ops && mpnt->vm_ops->close) {
mpnt926mm/mmap.cmpnt->vm_offset += mpnt->vm_end - mpnt->vm_start;
mpnt927mm/mmap.cmpnt->vm_start = mpnt->vm_end;
mpnt928mm/mmap.cmpnt->vm_ops->close(mpnt);
mpnt930mm/mmap.cremove_shared_vm_struct(mpnt);
mpnt931mm/mmap.cif (mpnt->vm_inode)
mpnt932mm/mmap.cmpnt->vm_inode->i_count--;
mpnt933mm/mmap.ckfree_s(mpnt, sizeof(*mpnt));
mpnt934mm/mmap.cmpnt = prev;