diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2019-11-06 22:55:38 +0100 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2019-11-20 09:40:08 +0100 |
commit | 4610ba7ad877fafc0a25a30c6c82015304120426 (patch) | |
tree | 0fc11b43cdaec8c1be989250eff895f528bccb9c /kernel/exit.c | |
parent | 3d4775df0a89240f671861c6ab6e8d59af8e9e41 (diff) | |
download | lwn-4610ba7ad877fafc0a25a30c6c82015304120426.tar.gz lwn-4610ba7ad877fafc0a25a30c6c82015304120426.zip |
exit/exec: Seperate mm_release()
mm_release() contains the futex exit handling. mm_release() is called from
do_exit()->exit_mm() and from exec()->exec_mm().
In the exit_mm() case PF_EXITING and the futex state is updated. In the
exec_mm() case these states are not touched.
As the futex exit code needs further protections against exit races, this
needs to be split into two functions.
Preparatory only, no functional change.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Ingo Molnar <mingo@kernel.org>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20191106224556.240518241@linutronix.de
Diffstat (limited to 'kernel/exit.c')
-rw-r--r-- | kernel/exit.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/exit.c b/kernel/exit.c index d11bdcaac2e1..cd893b530902 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -437,7 +437,7 @@ static void exit_mm(void) struct mm_struct *mm = current->mm; struct core_state *core_state; - mm_release(current, mm); + exit_mm_release(current, mm); if (!mm) return; sync_mm_rss(mm); |