Lines Matching refs:reaper
458 struct task_struct *reaper = pid_ns->child_reaper; in find_child_reaper() local
460 if (likely(reaper != father)) in find_child_reaper()
461 return reaper; in find_child_reaper()
463 reaper = find_alive_thread(father); in find_child_reaper()
464 if (reaper) { in find_child_reaper()
465 pid_ns->child_reaper = reaper; in find_child_reaper()
466 return reaper; in find_child_reaper()
490 struct task_struct *thread, *reaper; in find_new_reaper() local
502 for (reaper = father; in find_new_reaper()
503 !same_thread_group(reaper, child_reaper); in find_new_reaper()
504 reaper = reaper->real_parent) { in find_new_reaper()
506 if (reaper == &init_task) in find_new_reaper()
508 if (!reaper->signal->is_child_subreaper) in find_new_reaper()
510 thread = find_alive_thread(reaper); in find_new_reaper()
554 struct task_struct *p, *t, *reaper; in forget_original_parent() local
560 reaper = find_child_reaper(father); in forget_original_parent()
564 reaper = find_new_reaper(father, reaper); in forget_original_parent()
567 t->real_parent = reaper; in forget_original_parent()
579 if (!same_thread_group(reaper, father)) in forget_original_parent()
582 list_splice_tail_init(&father->children, &reaper->children); in forget_original_parent()