Signed-off-by: Chen Hanxiao <chenhanxiao@xxxxxxxxxxxxxx> --- Documentation/namespaces/pidns-hierarchy.txt | 51 ++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Documentation/namespaces/pidns-hierarchy.txt diff --git a/Documentation/namespaces/pidns-hierarchy.txt b/Documentation/namespaces/pidns-hierarchy.txt new file mode 100644 index 0000000..1820ae6d --- /dev/null +++ b/Documentation/namespaces/pidns-hierarchy.txt @@ -0,0 +1,51 @@ +This document is about how to use pid namespace hierarchy procfs. + +We knew whether two pids living in the same pid namespace +by /proc/PID/ns/pid, but their relationships +between pids were unknown: +we couldn't tell that one pid was another one's parent/siblings... +But /proc/pidns_hierarchy could tell us the answer. + +/proc/pidns_hierarchy will show the hierarchy of pid namespace +in the form of: + +<init_PID> <parent_of_init_PID> <relative PID level> + +init_PID: child reaper in a pid namespace +parent_of_init_PID: init_PID's parent, child reaper too +relative PID level: pid level relative to caller's ns, + started from '1'. + +Here is a chart to describe the relationship between +some pids: + + init_pid_ns level 0 + | + 1 + | +┌────────────┐ +ns1 ns2 level 1 +| | +1550 18060 + | + | + ns3 level 2 + | + 18102 + | + ┌──────────┐ + ns4 ns5 level 3 + | | + 1534 1600 + +It will be showed by /proc/pidns_hierarchy as below: + +#cat /proc/pidns_hierarchy +18060 1 1 +18102 18060 2 +1534 18102 3 +1600 18102 3 +1550 1 1 + +Note: numbers in column 1 are pid numbers in current ns, + they represent the pid '1' in different ns -- 1.9.3 _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/containers