diff options
Diffstat (limited to 'kernel/exit.c')
-rw-r--r-- | kernel/exit.c | 7 |
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)) |