You can find here the testcases for PID Namespace feature which recently went to kernel.
Here i am providing the basic functionality testing for PID Namespace, i have tested this patch on varios architectures.
Here is the patch description:
[PATCH 1/6] : This patch test for PID namespace kernel enablement on which LTP is running.
[PATCH 2/6] : This patch implements a basic test for cloning pid namespace. It verifies
that the newly created child process has pid == 1 and ppid == 0.
[PATCH 3/6] : This patch implements a basic test for cloning pid namespace. It verifies
that the newly created child process has sid == 1 and pgid == 1 after calling setsid() inside container.
[PATCH 4/6] : This patch test for cloned parent process id inside container-init after mounting /proc .
The basic idea behind this is to see, i am able to open parent namespace /proc/ppid directory
from inside container and also comparing parent pid as 0 instead of some other pid (assume e.g: 1234)
[PATCH 5/6] : Adding the functionality for compiling the code without ltp library with NO_LTP flag.
[PATCH 6/6] : Added README file for PIDNS.
Here is the result i have executed on ltp-full-20071130.tgz
Running pidns tests.
pid_namespace1 0 INFO : PIDNS test is running inside container
pid_namespace1 1 PASS : Success
pid_namespace2 0 INFO : Checking session id & group id inside container
pid_namespace2 1 PASS : Success: Got Group ID = 1 & Session ID = 1
pid_namespace3 0 INFO : Checking pid for parent ns and container-init
Parent namespace pid = 30782,container parent pid = 0,and container pid = 1
pid_namespace3 1 PASS : Got the proc file directory created by parent ns 30782
IBM, LTC, Bangalore , India