Lines Matching refs:reaper
532 struct task_struct *reaper = pid_ns->child_reaper; in find_child_reaper() local
535 if (likely(reaper != father)) in find_child_reaper()
536 return reaper; in find_child_reaper()
538 reaper = find_alive_thread(father); in find_child_reaper()
539 if (reaper) { in find_child_reaper()
540 pid_ns->child_reaper = reaper; in find_child_reaper()
541 return reaper; in find_child_reaper()
567 struct task_struct *thread, *reaper; in find_new_reaper() local
583 for (reaper = father->real_parent; in find_new_reaper()
584 task_pid(reaper)->level == ns_level; in find_new_reaper()
585 reaper = reaper->real_parent) { in find_new_reaper()
586 if (reaper == &init_task) in find_new_reaper()
588 if (!reaper->signal->is_child_subreaper) in find_new_reaper()
590 thread = find_alive_thread(reaper); in find_new_reaper()
634 struct task_struct *p, *t, *reaper; in forget_original_parent() local
640 reaper = find_child_reaper(father, dead); in forget_original_parent()
644 reaper = find_new_reaper(father, reaper); in forget_original_parent()
647 RCU_INIT_POINTER(t->real_parent, reaper); in forget_original_parent()
660 if (!same_thread_group(reaper, father)) in forget_original_parent()
663 list_splice_tail_init(&father->children, &reaper->children); in forget_original_parent()