Lines Matching refs:mm
106 int init_new_context(struct task_struct *tsk, struct mm_struct *mm) in init_new_context() argument
112 mutex_init(&mm->context.lock); in init_new_context()
113 old_mm = current->mm; in init_new_context()
115 mm->context.ldt = NULL; in init_new_context()
121 mm->context.ldt = NULL; in init_new_context()
135 mm->context.ldt = new_ldt; in init_new_context()
147 void destroy_context(struct mm_struct *mm) in destroy_context() argument
149 free_ldt_struct(mm->context.ldt); in destroy_context()
150 mm->context.ldt = NULL; in destroy_context()
157 struct mm_struct *mm = current->mm; in read_ldt() local
159 mutex_lock(&mm->context.lock); in read_ldt()
161 if (!mm->context.ldt) { in read_ldt()
169 size = mm->context.ldt->size * LDT_ENTRY_SIZE; in read_ldt()
173 if (copy_to_user(ptr, mm->context.ldt->entries, size)) { in read_ldt()
188 mutex_unlock(&mm->context.lock); in read_ldt()
209 struct mm_struct *mm = current->mm; in write_ldt() local
248 mutex_lock(&mm->context.lock); in write_ldt()
250 old_ldt = mm->context.ldt; in write_ldt()
264 install_ldt(mm, new_ldt); in write_ldt()
269 mutex_unlock(&mm->context.lock); in write_ldt()