proc: task_state: read cred->group_info outside of task_lock()
authorOleg Nesterov <[email protected]>
Wed, 10 Dec 2014 23:45:10 +0000 (15:45 -0800)
committerLinus Torvalds <[email protected]>
Thu, 11 Dec 2014 01:41:09 +0000 (17:41 -0800)
commit4af1036df4dd4f0d59fad9d82ed456bfa2e73fa6
treedb1e1ccc62ddffb35e429d9d306752a27ac4d9de
parent2fc1e948e820bddf8a686c6e2989219b471d7982
proc: task_state: read cred->group_info outside of task_lock()

task_state() reads cred->group_info under task_lock() because a long ago
it was task_struct->group_info and it was actually protected by
task->alloc_lock.  Today this task_unlock() after rcu_read_unlock() just
adds the confusion, move task_unlock() up.

Signed-off-by: Oleg Nesterov <[email protected]>
Cc: Aaron Tomlin <[email protected]>
Cc: Alexey Dobriyan <[email protected]>
Cc: "Eric W. Biederman" <[email protected]>,
Cc: Sterling Alexander <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Roland McGrath <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
fs/proc/array.c