aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/exit.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/exit.c')
-rw-r--r--kernel/exit.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/kernel/exit.c b/kernel/exit.c
index 2d8be7ebb0f7..d336c90a5f13 100644
--- a/kernel/exit.c
+++ b/kernel/exit.c
@@ -1093,11 +1093,12 @@ NORET_TYPE void do_exit(long code)
1093 mpol_put(tsk->mempolicy); 1093 mpol_put(tsk->mempolicy);
1094 tsk->mempolicy = NULL; 1094 tsk->mempolicy = NULL;
1095#endif 1095#endif
1096#ifdef CONFIG_FUTEX
1097 /* 1096 /*
1098 * This must happen late, after the PID is not 1097 * These must happen late, after the PID is not
1099 * hashed anymore: 1098 * hashed anymore, but still at a point that may sleep:
1100 */ 1099 */
1100 perf_counter_exit_task(tsk);
1101#ifdef CONFIG_FUTEX
1101 if (unlikely(!list_empty(&tsk->pi_state_list))) 1102 if (unlikely(!list_empty(&tsk->pi_state_list)))
1102 exit_pi_state_list(tsk); 1103 exit_pi_state_list(tsk);
1103 if (unlikely(current->pi_state_cache)) 1104 if (unlikely(current->pi_state_cache))