[<prev] [next>] [day] [month] [year] [list]
Message-ID: <tip-322a2c100a8998158445599ea437fb556aa95b11@git.kernel.org>
Date: Tue, 6 Oct 2009 15:03:57 GMT
From: tip-bot for Thomas Gleixner <tglx@...utronix.de>
To: linux-tip-commits@...r.kernel.org
Cc: linux-kernel@...r.kernel.org, hpa@...or.com, mingo@...hat.com,
peterz@...radead.org, tglx@...utronix.de, ani@...rban.org
Subject: [tip:core/urgent] futex: Move exit_pi_state() call to release_mm()
Commit-ID: 322a2c100a8998158445599ea437fb556aa95b11
Gitweb: http://git.kernel.org/tip/322a2c100a8998158445599ea437fb556aa95b11
Author: Thomas Gleixner <tglx@...utronix.de>
AuthorDate: Mon, 5 Oct 2009 18:18:03 +0200
Committer: Thomas Gleixner <tglx@...utronix.de>
CommitDate: Tue, 6 Oct 2009 17:00:01 +0200
futex: Move exit_pi_state() call to release_mm()
exit_pi_state() is called from do_exit() but not from do_execve().
Move it to release_mm() so it gets called from do_execve() as well.
Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
LKML-Reference: <new-submission>
Cc: stable@...nel.org
Cc: Anirban Sinha <ani@...rban.org>
Cc: Peter Zijlstra <peterz@...radead.org>
---
kernel/exit.c | 2 --
kernel/fork.c | 2 ++
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/exit.c b/kernel/exit.c
index ae5d866..bc2b1fd 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -989,8 +989,6 @@ NORET_TYPE void do_exit(long code)
tsk->mempolicy = NULL;
#endif
#ifdef CONFIG_FUTEX
- if (unlikely(!list_empty(&tsk->pi_state_list)))
- exit_pi_state_list(tsk);
if (unlikely(current->pi_state_cache))
kfree(current->pi_state_cache);
#endif
diff --git a/kernel/fork.c b/kernel/fork.c
index 88ef51c..341965b 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -553,6 +553,8 @@ void mm_release(struct task_struct *tsk, struct mm_struct *mm)
tsk->compat_robust_list = NULL;
}
#endif
+ if (unlikely(!list_empty(&tsk->pi_state_list)))
+ exit_pi_state_list(tsk);
#endif
/* Get rid of any cached register state */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists