]> git.karo-electronics.de Git - karo-tx-linux.git/commit
fs, proc: introduce /proc/<pid>/task/<tid>/children entry
authorCyrill Gorcunov <gorcunov@openvz.org>
Thu, 3 May 2012 05:44:57 +0000 (15:44 +1000)
committerStephen Rothwell <sfr@canb.auug.org.au>
Thu, 3 May 2012 05:53:03 +0000 (15:53 +1000)
commitac2306d81ee2fc64a8356b41774f4838c29759f1
treec7e4b2257ef2c5e9af991f6375139e9238618559
parentda163218d979ed337bab6084ca294e8becdc5ccf
fs, proc: introduce /proc/<pid>/task/<tid>/children entry

When we do checkpoint of a task we need to know the list of children the
task, has but there is no easy and fast way to generate reverse
parent->children chain from arbitrary <pid> (while a parent pid is
provided in "PPid" field of /proc/<pid>/status).

So instead of walking over all pids in the system (creating one big
process tree in memory, just to figure out which children a task has) --
we add explicit /proc/<pid>/task/<tid>/children entry, because the kernel
already has this kind of information but it is not yet exported.

This is a first level children, not the whole process tree.

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Reviewed-by: Oleg Nesterov <oleg@redhat.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Cc: Pavel Emelyanov <xemul@parallels.com>
Cc: Serge Hallyn <serge.hallyn@canonical.com>
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Documentation/filesystems/proc.txt
fs/proc/array.c
fs/proc/base.c
fs/proc/internal.h