summaryrefslogtreecommitdiffstats
path: root/kernel/sys.c
diff options
context:
space:
mode:
authorOleg Nesterov <oleg@tv-sign.ru>2006-03-29 02:11:20 +0200
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-29 04:36:43 +0200
commit5876700cd399112ecfa70df36203c8c6660d84f8 (patch)
tree3060724c6682ee7452bcb7b3c99eded75cd59ea7 /kernel/sys.c
parent[PATCH] revert "Optimize sys_times for a single thread process" (diff)
downloadlinux-5876700cd399112ecfa70df36203c8c6660d84f8.tar.xz
linux-5876700cd399112ecfa70df36203c8c6660d84f8.zip
[PATCH] do __unhash_process() under ->siglock
This patch moves __unhash_process() call from realease_task() to __exit_signal(), so __detach_pid() is called with ->siglock held. This means we don't need tasklist_lock to iterate over thread group anymore: copy_process() was already changed to do attach_pid() under ->siglock. Eric's "pidhash-kill-switch_exec_pids.patch" from -mm changed de_thread() so it doesn't touch PIDTYPE_TGID. NOTE: de_thread() still needs some attention. It still changes task->pid lockless. Taking ->sighand.siglock here allows to do more tasklist_lock removals. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel/sys.c')
0 files changed, 0 insertions, 0 deletions