Oleg Nesterov
f63ee72e0f
[PATCH] introduce lock_task_sighand() helper
...
Add lock_task_sighand() helper and converts group_send_sig_info() to use
it. Hopefully we will have more users soon.
This patch also removes '!sighand->count' and '!p->usage' checks, I think
they both are bogus, racy and unneeded (but probably it makes sense to
restore them as BUG_ON()s).
->sighand is cleared and it's ->count is decremented in release_task() with
sighand->siglock held, so it is a bug to have '!p->usage || !->count' after
we already locked and verified it is the same. On the other hand, an
already dead task without ->sighand can have a non-zero ->usage due to
ptrace, for example.
If we read the stale value of ->sighand we must see the change after
spin_lock(), because that change was done while holding that same old
->sighand.siglock.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru >
Cc: "Eric W. Biederman" <ebiederm@xmission.com >
Signed-off-by: Andrew Morton <akpm@osdl.org >
Signed-off-by: Linus Torvalds <torvalds@osdl.org >
2006-03-28 18:36:42 -08:00
..
2006-03-26 23:13:39 +01:00
2006-03-21 08:52:18 -08:00
2006-03-20 23:24:25 -05:00
2006-03-22 13:56:56 -08:00
2006-03-22 13:56:56 -08:00
2006-03-27 08:44:50 -08:00
2006-03-22 13:56:56 -08:00
2006-03-27 08:44:43 -08:00
2006-03-27 08:45:03 -08:00
2006-03-28 09:16:05 -08:00
2006-03-27 08:44:50 -08:00
2006-03-21 21:21:31 -05:00
2006-03-27 08:44:40 -08:00
2006-03-24 07:33:20 -08:00
2006-03-26 08:57:15 -08:00
2006-03-28 13:03:44 +02:00
2006-03-23 20:00:26 +01:00
2006-03-27 08:44:47 -08:00
2006-03-26 08:57:01 -08:00
2006-03-23 07:38:10 -08:00
2006-03-25 08:22:56 -08:00
2006-03-28 09:16:05 -08:00
2006-03-23 07:38:09 -08:00
2006-03-25 18:15:24 +00:00
2006-03-28 09:16:06 -08:00
2006-03-27 08:44:59 -08:00
2006-03-27 08:44:49 -08:00
2006-03-25 08:23:01 -08:00
2006-03-28 09:16:04 -08:00
2006-03-24 07:33:22 -08:00
2006-03-28 09:16:06 -08:00
2006-03-21 20:14:08 +11:00
2006-03-25 08:22:53 -08:00
2006-03-20 22:50:58 -08:00
2006-03-28 09:16:05 -08:00
2006-03-27 08:44:59 -08:00
2006-03-22 10:58:05 -08:00
2006-03-25 08:22:53 -08:00
2006-03-27 08:44:59 -08:00
2006-03-28 09:16:07 -08:00
2006-03-25 09:10:54 -08:00
2006-03-20 22:42:39 -08:00
2006-03-26 08:56:54 -08:00
2006-03-28 09:16:06 -08:00
2006-03-23 07:38:17 -08:00
2006-03-23 07:38:14 -08:00
2006-03-28 09:16:06 -08:00
2006-03-24 07:33:25 -08:00
2006-03-28 09:16:08 -08:00
2006-03-23 07:38:09 -08:00
2006-03-28 09:16:06 -08:00
2006-03-25 09:24:53 -08:00
2006-03-27 08:44:50 -08:00
2006-03-26 08:57:09 -08:00
2006-03-23 07:38:14 -08:00
2006-03-28 09:16:05 -08:00
2006-03-26 08:57:05 -08:00
2006-03-26 08:56:53 -08:00
2006-03-26 08:56:56 -08:00
2006-03-26 08:57:03 -08:00
2006-03-28 09:16:06 -08:00
2006-03-23 14:21:50 -08:00
2006-03-27 08:44:51 -08:00
2006-03-23 14:21:51 -08:00
2006-03-26 08:57:00 -08:00
2006-03-24 07:33:28 -08:00
2006-03-20 22:41:23 -08:00
2006-03-20 22:39:47 -08:00
2006-03-28 18:36:41 -08:00
2006-03-25 08:22:56 -08:00
2006-03-25 08:22:53 -08:00
2006-03-28 09:16:05 -08:00
2006-03-26 08:56:56 -08:00
2006-03-26 08:56:56 -08:00
2006-03-26 08:56:56 -08:00
2006-03-20 22:21:10 -08:00
2006-03-25 08:22:55 -08:00
2006-03-26 08:56:55 -08:00
2006-03-28 09:16:05 -08:00
2006-03-27 08:44:50 -08:00
2006-03-23 07:38:12 -08:00
2006-03-26 08:57:03 -08:00
2006-03-24 10:18:43 -05:00
2006-03-24 07:33:25 -08:00
2006-03-23 07:38:12 -08:00
2006-03-27 08:44:52 -08:00
2006-03-25 08:22:53 -08:00
2006-03-27 08:44:50 -08:00
2006-03-24 07:33:23 -08:00
2006-03-26 08:57:00 -08:00
2006-03-22 07:54:06 -08:00
2006-03-28 09:16:05 -08:00
2006-03-22 07:53:57 -08:00
2006-03-22 07:54:02 -08:00
2006-03-27 08:44:48 -08:00
2006-03-25 08:39:20 -08:00
2006-03-25 08:22:52 -08:00
2006-03-28 09:16:06 -08:00
2006-03-23 07:38:13 -08:00
2006-03-23 07:38:14 -08:00
2006-03-23 07:38:14 -08:00
2006-03-28 09:16:06 -08:00
2006-03-21 23:58:08 -08:00
2006-03-20 22:32:28 -08:00
2006-03-20 22:58:21 -08:00
2006-03-20 22:45:21 -08:00
2006-03-28 09:16:06 -08:00
2006-03-27 08:44:47 -08:00
2006-03-27 08:44:50 -08:00
2006-03-28 09:16:05 -08:00
2006-03-22 07:53:58 -08:00
2006-03-24 07:33:22 -08:00
2006-03-28 09:16:04 -08:00
2006-03-23 14:35:16 -08:00
2006-03-27 08:44:48 -08:00
2006-03-28 18:36:40 -08:00
2006-03-23 07:38:07 -08:00
2006-03-28 09:16:04 -08:00
2006-03-25 08:22:53 -08:00
2006-03-28 09:16:06 -08:00
2006-03-23 07:38:16 -08:00
2006-03-28 09:16:06 -08:00
2006-03-25 08:22:51 -08:00
2006-03-25 08:22:59 -08:00
2006-03-28 09:16:06 -08:00
2006-03-23 07:38:17 -08:00
2006-03-28 09:16:06 -08:00
2006-03-25 08:22:53 -08:00
2006-03-23 19:56:55 +01:00
2006-03-27 08:44:51 -08:00
2006-03-23 01:16:06 -08:00
2006-03-28 18:36:42 -08:00
2006-03-25 09:24:53 -08:00
2006-03-23 07:38:12 -08:00
2006-03-25 23:03:13 +00:00
2006-03-22 17:33:12 -08:00
2006-03-26 08:57:09 -08:00
2006-03-20 22:43:56 -08:00
2006-03-25 08:22:49 -08:00
2006-03-26 08:56:55 -08:00
2006-03-20 22:41:23 -08:00
2006-03-28 09:16:05 -08:00
2006-03-26 08:57:00 -08:00
2006-03-26 08:57:00 -08:00
2006-03-24 07:33:31 -08:00
2006-03-23 07:38:07 -08:00
2006-03-28 09:16:02 -08:00
2006-03-24 07:33:15 -08:00
2006-03-20 22:40:29 -08:00
2006-03-20 21:32:58 -08:00
2006-03-27 08:44:49 -08:00
2006-03-26 08:57:03 -08:00
2006-03-26 08:57:03 -08:00
2006-03-26 08:56:57 -08:00
2006-03-27 08:44:43 -08:00
2006-03-25 08:22:52 -08:00
2006-03-23 07:38:11 -08:00
2006-03-26 08:57:00 -08:00
2006-03-25 08:23:01 -08:00
2006-03-23 07:38:14 -08:00
2006-03-28 09:16:06 -08:00
2006-03-28 09:16:05 -08:00
2006-03-28 09:16:05 -08:00
2006-03-23 07:38:08 -08:00
2006-03-23 07:12:57 -05:00
2006-03-24 07:33:26 -08:00
2006-03-22 00:01:31 -08:00
2006-03-20 21:25:50 -08:00
2006-03-25 08:22:53 -08:00