2006-02-01 18:30:52

by Oleg Nesterov

[permalink] [raw]
Subject: [PATCH] choose_new_parent: remove unused arg, sanitize exit_state check

'child_reaper' arg is not used in choose_new_parent().

"->exit_state >= EXIT_ZOMBIE" check is a leftover, was
valid when EXIT_ZOMBIE lived in ->state var.

Signed-off-by: Oleg Nesterov <[email protected]>

--- RC-1/kernel/exit.c~ 2006-02-02 01:18:56.000000000 +0300
+++ RC-1/kernel/exit.c 2006-02-02 01:22:09.000000000 +0300
@@ -517,13 +517,13 @@ static void exit_mm(struct task_struct *
mmput(mm);
}

-static inline void choose_new_parent(task_t *p, task_t *reaper, task_t *child_reaper)
+static inline void choose_new_parent(task_t *p, task_t *reaper)
{
/*
* Make sure we're not reparenting to ourselves and that
* the parent is not a zombie.
*/
- BUG_ON(p == reaper || reaper->exit_state >= EXIT_ZOMBIE);
+ BUG_ON(p == reaper || reaper->exit_state);
p->real_parent = reaper;
}

@@ -624,7 +624,7 @@ static void forget_original_parent(struc

if (father == p->real_parent) {
/* reparent with a reaper, real father it's us */
- choose_new_parent(p, reaper, child_reaper);
+ choose_new_parent(p, reaper);
reparent_thread(p, father, 0);
} else {
/* reparent ptraced task to its real parent */
@@ -645,7 +645,7 @@ static void forget_original_parent(struc
}
list_for_each_safe(_p, _n, &father->ptrace_children) {
p = list_entry(_p,struct task_struct,ptrace_list);
- choose_new_parent(p, reaper, child_reaper);
+ choose_new_parent(p, reaper);
reparent_thread(p, father, 1);
}
}


2006-02-02 05:37:34

by Eric W. Biederman

[permalink] [raw]
Subject: Re: [PATCH] choose_new_parent: remove unused arg, sanitize exit_state check

Oleg Nesterov <[email protected]> writes:

> 'child_reaper' arg is not used in choose_new_parent().
>
> "->exit_state >= EXIT_ZOMBIE" check is a leftover, was
> valid when EXIT_ZOMBIE lived in ->state var.
>
> Signed-off-by: Oleg Nesterov <[email protected]>

Looks good. I have been tripping over that extra parameter
in choose_new_parent for a while now.

Acked-by: Eric Biederman <[email protected]>