diff options
| author | Oleg Nesterov <[email protected]> | 2014-10-09 15:25:19 -0700 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2014-10-09 22:25:48 -0400 |
| commit | 46c298cf69d0e9a27d33ff992a81bd7b441c7933 (patch) | |
| tree | 5bf50f1166996eb08fd7303ba93cc8bf8c5df7d9 /tools/perf/scripts/python | |
| parent | b1a8de1f534337b398c7778578a56ec4f018cb27 (diff) | |
fs/proc/task_mmu.c: don't use task->mm in m_start() and show_*map()
get_gate_vma(priv->task->mm) looks ugly and wrong, task->mm can be NULL or
it can changed by exec right after mm_access().
And in theory this race is not harmless, the task can exec and then later
exit and free the new mm_struct. In this case get_task_mm(oldmm) can't
help, get_gate_vma(task->mm) can read the freed/unmapped memory.
I think that priv->task should simply die and hold_task_mempolicy() logic
can be simplified. tail_vma logic asks for cleanups too.
Signed-off-by: Oleg Nesterov <[email protected]>
Acked-by: Kirill A. Shutemov <[email protected]>
Acked-by: Cyrill Gorcunov <[email protected]>
Cc: "Eric W. Biederman" <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions