Lines Matching refs:mm
178 struct mm_struct *mm = current->mm; in acct_arg_size() local
181 if (!mm || !diff) in acct_arg_size()
185 add_mm_counter(mm, MM_ANONPAGES, diff); in acct_arg_size()
201 ret = get_user_pages(current, bprm->mm, pos, in get_arg_page()
259 struct mm_struct *mm = bprm->mm; in __bprm_mm_init() local
265 down_write(&mm->mmap_sem); in __bprm_mm_init()
266 vma->vm_mm = mm; in __bprm_mm_init()
281 err = insert_vm_struct(mm, vma); in __bprm_mm_init()
285 mm->stack_vm = mm->total_vm = 1; in __bprm_mm_init()
286 arch_bprm_mm_init(mm, vma); in __bprm_mm_init()
287 up_write(&mm->mmap_sem); in __bprm_mm_init()
291 up_write(&mm->mmap_sem); in __bprm_mm_init()
371 struct mm_struct *mm = NULL; in bprm_mm_init() local
373 bprm->mm = mm = mm_alloc(); in bprm_mm_init()
375 if (!mm) in bprm_mm_init()
385 if (mm) { in bprm_mm_init()
386 bprm->mm = NULL; in bprm_mm_init()
387 mmdrop(mm); in bprm_mm_init()
584 struct mm_struct *mm = vma->vm_mm; in shift_arg_pages() local
598 if (vma != find_vma(mm, new_start)) in shift_arg_pages()
616 tlb_gather_mmu(&tlb, mm, old_start, old_end); in shift_arg_pages()
653 struct mm_struct *mm = current->mm; in setup_arg_pages() local
678 mm->arg_start = bprm->p - stack_shift; in setup_arg_pages()
691 mm->arg_start = bprm->p; in setup_arg_pages()
698 down_write(&mm->mmap_sem); in setup_arg_pages()
710 vm_flags |= mm->def_flags; in setup_arg_pages()
747 current->mm->start_stack = bprm->p; in setup_arg_pages()
753 up_write(&mm->mmap_sem); in setup_arg_pages()
843 static int exec_mmap(struct mm_struct *mm) in exec_mmap() argument
850 old_mm = current->mm; in exec_mmap()
869 tsk->mm = mm; in exec_mmap()
870 tsk->active_mm = mm; in exec_mmap()
871 activate_mm(active_mm, mm); in exec_mmap()
872 tsk->mm->vmacache_seqnum = 0; in exec_mmap()
1099 set_mm_exe_file(bprm->mm, bprm->file); in flush_old_exec()
1105 retval = exec_mmap(bprm->mm); in flush_old_exec()
1109 bprm->mm = NULL; /* We're using it now */ in flush_old_exec()
1133 arch_pick_mmap_layout(current->mm); in setup_new_exec()
1139 set_dumpable(current->mm, SUID_DUMP_USER); in setup_new_exec()
1141 set_dumpable(current->mm, suid_dumpable); in setup_new_exec()
1150 current->mm->task_size = TASK_SIZE; in setup_new_exec()
1159 set_dumpable(current->mm, suid_dumpable); in setup_new_exec()
1234 if (get_dumpable(current->mm) != SUID_DUMP_USER) in install_exec_creds()
1432 if (retval < 0 && !bprm->mm) { in search_binary_handler()
1607 if (bprm->mm) { in do_execveat_common()
1609 mmput(bprm->mm); in do_execveat_common()
1683 struct mm_struct *mm = current->mm; in set_binfmt() local
1685 if (mm->binfmt) in set_binfmt()
1686 module_put(mm->binfmt->module); in set_binfmt()
1688 mm->binfmt = new; in set_binfmt()
1697 void set_dumpable(struct mm_struct *mm, int value) in set_dumpable() argument
1705 old = ACCESS_ONCE(mm->flags); in set_dumpable()
1707 } while (cmpxchg(&mm->flags, old, new) != old); in set_dumpable()