Re: 2.6.9-rc1-mm5

Kirill Korotaev
2004-09-13T15:17:08Z

[-- Attachment #1: Type: text/plain, Size: 267 bytes --]

Hello Andrew,

Please replace patch next_thread-bug-fixes.patch in -mm5 tree with the
last diff-next_thread I sent to you.

And it looks like thread loop in do_task_stat() doesn't require siglock
lock, so you can add the patch attached to reduce lock area.

Kirill

[-- Attachment #2: diff-task_stat-mm5 --]
[-- Type: text/plain, Size: 662 bytes --]

--- ./fs/proc/array.c.nt 2004-09-13 18:56:17.000000000 +0400
+++ ./fs/proc/array.c 2004-09-13 19:13:03.749684712 +0400
@@ -338,6 +338,7 @@ static int do_task_stat(struct task_stru
spin_lock_irq(&task->sighand->siglock);
num_threads = atomic_read(&task->signal->count);
collect_sigign_sigcatch(task, &sigign, &sigcatch);
+ spin_unlock_irq(&task->sighand->siglock);

/* add up live thread stats at the group level */
if (whole) {
@@ -350,8 +351,6 @@ static int do_task_stat(struct task_stru
t = next_thread(t);
} while (t != task);
}
-
- spin_unlock_irq(&task->sighand->siglock);
}
if (task->signal) {
if (task->signal->tty) {