From 03a85f8e25d52e15112eb5e146e2766337217ed5 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Thu, 9 Jan 2003 07:21:03 -0800 Subject: Fix exec_mmap() to release the MM while we still have it active, to properly de-activate it and make the child_tid logic work correctly. Clear %fs/%gs in deactivate_mm() on x86, since our LDT will no longer be valid after this. Update mm_release() to deactivate MM state before releasing, and avoid the expensive child_tid FUTEX if we're the last user of the MM. --- include/linux/sched.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include/linux') diff --git a/include/linux/sched.h b/include/linux/sched.h index 9545a1957089..9916d377a74b 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -566,7 +566,7 @@ static inline void mmdrop(struct mm_struct * mm) /* mmput gets rid of the mappings and all user-space */ extern void mmput(struct mm_struct *); /* Remove the current tasks stale references to the old mm_struct */ -extern void mm_release(void); +extern void mm_release(struct task_struct *, struct mm_struct *); extern int copy_thread(int, unsigned long, unsigned long, unsigned long, struct task_struct *, struct pt_regs *); extern void flush_thread(void); -- cgit v1.2.3