All of lore.kernel.org
 help / color / mirror / Atom feed
* [LTP] Remove pidns14 test case
@ 2009-07-22  6:29 M. Mohan Kumar
  2009-07-30 18:29 ` Subrata Modak
  2009-08-03 12:09 ` M. Mohan Kumar
  0 siblings, 2 replies; 4+ messages in thread
From: M. Mohan Kumar @ 2009-07-22  6:29 UTC (permalink / raw)
  To: subrata; +Cc: ltp-list, sukadev, sachinp

[PATCH] Remove pidns14 test case
Container-init may be immune to unhandled fatal signals (like SIGUSR1)
even if they are from ancestor namespace. SIGKILL/SIGSTOP are the only
reliable signals to a container-init from ancestor namespace. So remove
test case pidns14 from container test suite. Please check git commit id
b3bfa0cba867f23365b81658b47efd906830879b for the kernel changes.

Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>
---
 testcases/kernel/containers/pidns/pidns14.c       |  122 ---------------------
 testcases/kernel/containers/pidns/runpidnstest.sh |    6 -
 2 files changed, 0 insertions(+), 128 deletions(-)
 delete mode 100644 testcases/kernel/containers/pidns/pidns14.c

diff --git a/testcases/kernel/containers/pidns/pidns14.c b/testcases/kernel/containers/pidns/pidns14.c
deleted file mode 100644
index e95bf95..0000000
--- a/testcases/kernel/containers/pidns/pidns14.c
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
-* Copyright (c) International Business Machines Corp., 2008
-* This program is free software; you can redistribute it and/or modify
-* it under the terms of the GNU General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
-* the GNU General Public License for more details.
-* You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-*
-***************************************************************************
-* * Assertion:
-* * kill -USR1 container_init from outside a container
-* * 	$ Where init has not defined a custom handler for USR1
-* * 	$ Should kill the container
-* * 	$ else the test fails.
-* *
-* * Description:
-* *  This testcase creates container and waits till it is awakened by parent.
-* *  The parent process sends the SIGUSR1 to container init.
-* *  This would invoke default handler & terminate the container init.
-* *  In parent process verify, if the SIGUSR1 signal is passed to c-init.
-* *  If yes then Test is Passed else Test is Failed.
-* *
-* * History:
-* *  DATE	  NAME				   DESCRIPTION
-* *  14/11/08  Veerendra C  <vechandr@in.ibm.com> Verifying kill -USR1 in pidns
-*
-******************************************************************************/
-#include "config.h"
-
-#define _GNU_SOURCE 1
-#include <sys/wait.h>
-#include <sys/types.h>
-#include <signal.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <usctest.h>
-#include <test.h>
-#include <libclone.h>
-
-char *TCID = "pidns14";
-int TST_TOTAL = 1;
-
-int child_fn(void *);
-void cleanup(void);
-
-#define CHILD_PID	1
-#define PARENT_PID	0
-
-/*
- * child_fn() - Inside container
- */
-int child_fn(void *ttype)
-{
-	pid_t pid, ppid;
-
-	/* Set process id and parent pid */
-	pid = getpid();
-	ppid = getppid();
-
-	if ((pid != CHILD_PID) || (ppid != PARENT_PID)) {
-		tst_resm(TBROK, "pidns is not created.");
-		cleanup();
-	}
-	pause();
-	tst_resm(TFAIL, "Oops! Container init resumed after receiving SIGUSR1");
-	return -1;
-}
-
-/*
- * cleanup() - performs all ONE TIME cleanup for this test at
- *			 completion or premature exit.
- */
-void cleanup()
-{
-	/* Clean the test testcase as LTP wants*/
-	TEST_CLEANUP;
-	tst_exit();
-
-}
-
-/***********************************************************************
-*   M A I N
-***********************************************************************/
-
-int main(int argc, char *argv[])
-{
-	int status;
-	pid_t cpid;
-
-	cpid = do_clone(CLONE_NEWPID | SIGCHLD, child_fn, NULL);
-
-	if (cpid < 0) {
-		tst_resm(TBROK, "clone() failed.");
-		cleanup();
-	}
-
-	sleep(1);
-	/* Passing the SIGUSR1 to the container init */
-	if (kill(cpid, SIGUSR1) != 0) {
-		tst_resm(TBROK, "kill(SIGUSR1) fails.");
-		cleanup();
-	}
-
-	sleep(1);
-	if (waitpid(cpid, &status, 0) < 0)
-		tst_resm(TWARN, "waitpid() failed.");
-
-	if ((WIFSIGNALED(status)) && (WTERMSIG(status) == SIGUSR1))
-		tst_resm(TPASS, "Container init is killed as expected, "
-				" when the SIGUSR1 is passed from parent\n");
-	 else
-		tst_resm(TFAIL, "After sending signal kill -USR1, "
-				"returned unexpected error\n");
-
-	return 0;
-}	/* End main */
diff --git a/testcases/kernel/containers/pidns/runpidnstest.sh b/testcases/kernel/containers/pidns/runpidnstest.sh
index 12d3b34..03fed38 100644
--- a/testcases/kernel/containers/pidns/runpidnstest.sh
+++ b/testcases/kernel/containers/pidns/runpidnstest.sh
@@ -85,12 +85,6 @@ if [ $rc -ne 0 ] && [ -z $err_code ]; then
 	err_code=$rc
 fi
 
-pidns14
-rc=$?
-if [ $rc -ne 0 ] && [ -z $err_code ]; then
-	err_code=$rc
-fi
-
 pidns16
 rc=$?
 if [ $rc -ne 0 ] && [ -z $err_code ]; then
-- 
1.6.2.5


------------------------------------------------------------------------------
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [LTP] Remove pidns14 test case
  2009-07-22  6:29 [LTP] Remove pidns14 test case M. Mohan Kumar
@ 2009-07-30 18:29 ` Subrata Modak
  2009-08-03 12:09 ` M. Mohan Kumar
  1 sibling, 0 replies; 4+ messages in thread
From: Subrata Modak @ 2009-07-30 18:29 UTC (permalink / raw)
  To: mohan; +Cc: ltp-list, sukadev, sachinp

On Wed, 2009-07-22 at 11:59 +0530, M. Mohan Kumar wrote: 
> [PATCH] Remove pidns14 test case
> Container-init may be immune to unhandled fatal signals (like SIGUSR1)
> even if they are from ancestor namespace. SIGKILL/SIGSTOP are the only
> reliable signals to a container-init from ancestor namespace. So remove
> test case pidns14 from container test suite. Please check git commit id
> b3bfa0cba867f23365b81658b47efd906830879b for the kernel changes.
> 
> Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>

I had removed this long back:

Revision 1.5 
Wed Jul 8 17:44:09 2009 UTC (3 weeks ago) by subrata_modak 
Branch: MAIN 
CVS Tags: HEAD 
Changes since 1.4: +0 -0 lines 
FILE REMOVED 
Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>, "Serge E. Hallyn" <serue@us.ibm.com> & "M. Mohan Kumar" <mohan@in.ibm.com> wanted to get this removed.
http://ltp.cvs.sourceforge.net/viewvc/ltp/ltp/testcases/kernel/containers/pidns/pidns14.c?hideattic=0&view=log,


Regards--
Subrata

> ---
>  testcases/kernel/containers/pidns/pidns14.c       |  122 ---------------------
>  testcases/kernel/containers/pidns/runpidnstest.sh |    6 -
>  2 files changed, 0 insertions(+), 128 deletions(-)
>  delete mode 100644 testcases/kernel/containers/pidns/pidns14.c
> 
> diff --git a/testcases/kernel/containers/pidns/pidns14.c b/testcases/kernel/containers/pidns/pidns14.c
> deleted file mode 100644
> index e95bf95..0000000
> --- a/testcases/kernel/containers/pidns/pidns14.c
> +++ /dev/null
> @@ -1,122 +0,0 @@
> -/*
> -* Copyright (c) International Business Machines Corp., 2008
> -* This program is free software; you can redistribute it and/or modify
> -* it under the terms of the GNU General Public License as published by
> -* the Free Software Foundation; either version 2 of the License, or
> -* (at your option) any later version.
> -* This program is distributed in the hope that it will be useful,
> -* but WITHOUT ANY WARRANTY; without even the implied warranty of
> -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
> -* the GNU General Public License for more details.
> -* You should have received a copy of the GNU General Public License
> -* along with this program; if not, write to the Free Software
> -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
> -*
> -***************************************************************************
> -* * Assertion:
> -* * kill -USR1 container_init from outside a container
> -* * 	$ Where init has not defined a custom handler for USR1
> -* * 	$ Should kill the container
> -* * 	$ else the test fails.
> -* *
> -* * Description:
> -* *  This testcase creates container and waits till it is awakened by parent.
> -* *  The parent process sends the SIGUSR1 to container init.
> -* *  This would invoke default handler & terminate the container init.
> -* *  In parent process verify, if the SIGUSR1 signal is passed to c-init.
> -* *  If yes then Test is Passed else Test is Failed.
> -* *
> -* * History:
> -* *  DATE	  NAME				   DESCRIPTION
> -* *  14/11/08  Veerendra C  <vechandr@in.ibm.com> Verifying kill -USR1 in pidns
> -*
> -******************************************************************************/
> -#include "config.h"
> -
> -#define _GNU_SOURCE 1
> -#include <sys/wait.h>
> -#include <sys/types.h>
> -#include <signal.h>
> -#include <stdlib.h>
> -#include <unistd.h>
> -#include <usctest.h>
> -#include <test.h>
> -#include <libclone.h>
> -
> -char *TCID = "pidns14";
> -int TST_TOTAL = 1;
> -
> -int child_fn(void *);
> -void cleanup(void);
> -
> -#define CHILD_PID	1
> -#define PARENT_PID	0
> -
> -/*
> - * child_fn() - Inside container
> - */
> -int child_fn(void *ttype)
> -{
> -	pid_t pid, ppid;
> -
> -	/* Set process id and parent pid */
> -	pid = getpid();
> -	ppid = getppid();
> -
> -	if ((pid != CHILD_PID) || (ppid != PARENT_PID)) {
> -		tst_resm(TBROK, "pidns is not created.");
> -		cleanup();
> -	}
> -	pause();
> -	tst_resm(TFAIL, "Oops! Container init resumed after receiving SIGUSR1");
> -	return -1;
> -}
> -
> -/*
> - * cleanup() - performs all ONE TIME cleanup for this test at
> - *			 completion or premature exit.
> - */
> -void cleanup()
> -{
> -	/* Clean the test testcase as LTP wants*/
> -	TEST_CLEANUP;
> -	tst_exit();
> -
> -}
> -
> -/***********************************************************************
> -*   M A I N
> -***********************************************************************/
> -
> -int main(int argc, char *argv[])
> -{
> -	int status;
> -	pid_t cpid;
> -
> -	cpid = do_clone(CLONE_NEWPID | SIGCHLD, child_fn, NULL);
> -
> -	if (cpid < 0) {
> -		tst_resm(TBROK, "clone() failed.");
> -		cleanup();
> -	}
> -
> -	sleep(1);
> -	/* Passing the SIGUSR1 to the container init */
> -	if (kill(cpid, SIGUSR1) != 0) {
> -		tst_resm(TBROK, "kill(SIGUSR1) fails.");
> -		cleanup();
> -	}
> -
> -	sleep(1);
> -	if (waitpid(cpid, &status, 0) < 0)
> -		tst_resm(TWARN, "waitpid() failed.");
> -
> -	if ((WIFSIGNALED(status)) && (WTERMSIG(status) == SIGUSR1))
> -		tst_resm(TPASS, "Container init is killed as expected, "
> -				" when the SIGUSR1 is passed from parent\n");
> -	 else
> -		tst_resm(TFAIL, "After sending signal kill -USR1, "
> -				"returned unexpected error\n");
> -
> -	return 0;
> -}	/* End main */
> diff --git a/testcases/kernel/containers/pidns/runpidnstest.sh b/testcases/kernel/containers/pidns/runpidnstest.sh
> index 12d3b34..03fed38 100644
> --- a/testcases/kernel/containers/pidns/runpidnstest.sh
> +++ b/testcases/kernel/containers/pidns/runpidnstest.sh
> @@ -85,12 +85,6 @@ if [ $rc -ne 0 ] && [ -z $err_code ]; then
>  	err_code=$rc
>  fi
> 
> -pidns14
> -rc=$?
> -if [ $rc -ne 0 ] && [ -z $err_code ]; then
> -	err_code=$rc
> -fi
> -
>  pidns16
>  rc=$?
>  if [ $rc -ne 0 ] && [ -z $err_code ]; then


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [LTP] Remove pidns14 test case
  2009-07-22  6:29 [LTP] Remove pidns14 test case M. Mohan Kumar
  2009-07-30 18:29 ` Subrata Modak
@ 2009-08-03 12:09 ` M. Mohan Kumar
  2009-08-04 12:06   ` Subrata Modak
  1 sibling, 1 reply; 4+ messages in thread
From: M. Mohan Kumar @ 2009-08-03 12:09 UTC (permalink / raw)
  To: subrata; +Cc: ltp-list, sukadev, sachinp

Hi Subrata,

July LTP release has partially removed pidns14 test case. Still the
runpidnstest.sh script has reference to pidns14 test case. My patch removed
all of the references. Could you please remove the reference to pidns14 in
runpidnstest.sh script also?

Regards,
M. Mohan Kumar.

On Wed, Jul 22, 2009 at 11:59:05AM +0530, M. Mohan Kumar wrote:
> [PATCH] Remove pidns14 test case
> Container-init may be immune to unhandled fatal signals (like SIGUSR1)
> even if they are from ancestor namespace. SIGKILL/SIGSTOP are the only
> reliable signals to a container-init from ancestor namespace. So remove
> test case pidns14 from container test suite. Please check git commit id
> b3bfa0cba867f23365b81658b47efd906830879b for the kernel changes.
> 
> Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>
> ---
>  testcases/kernel/containers/pidns/pidns14.c       |  122 ---------------------
>  testcases/kernel/containers/pidns/runpidnstest.sh |    6 -
>  2 files changed, 0 insertions(+), 128 deletions(-)
>  delete mode 100644 testcases/kernel/containers/pidns/pidns14.c
> 
> diff --git a/testcases/kernel/containers/pidns/pidns14.c b/testcases/kernel/containers/pidns/pidns14.c
> deleted file mode 100644
> index e95bf95..0000000
> --- a/testcases/kernel/containers/pidns/pidns14.c
> +++ /dev/null
> @@ -1,122 +0,0 @@
> -/*
> -* Copyright (c) International Business Machines Corp., 2008
> -* This program is free software; you can redistribute it and/or modify
> -* it under the terms of the GNU General Public License as published by
> -* the Free Software Foundation; either version 2 of the License, or
> -* (at your option) any later version.
> -* This program is distributed in the hope that it will be useful,
> -* but WITHOUT ANY WARRANTY; without even the implied warranty of
> -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
> -* the GNU General Public License for more details.
> -* You should have received a copy of the GNU General Public License
> -* along with this program; if not, write to the Free Software
> -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
> -*
> -***************************************************************************
> -* * Assertion:
> -* * kill -USR1 container_init from outside a container
> -* * 	$ Where init has not defined a custom handler for USR1
> -* * 	$ Should kill the container
> -* * 	$ else the test fails.
> -* *
> -* * Description:
> -* *  This testcase creates container and waits till it is awakened by parent.
> -* *  The parent process sends the SIGUSR1 to container init.
> -* *  This would invoke default handler & terminate the container init.
> -* *  In parent process verify, if the SIGUSR1 signal is passed to c-init.
> -* *  If yes then Test is Passed else Test is Failed.
> -* *
> -* * History:
> -* *  DATE	  NAME				   DESCRIPTION
> -* *  14/11/08  Veerendra C  <vechandr@in.ibm.com> Verifying kill -USR1 in pidns
> -*
> -******************************************************************************/
> -#include "config.h"
> -
> -#define _GNU_SOURCE 1
> -#include <sys/wait.h>
> -#include <sys/types.h>
> -#include <signal.h>
> -#include <stdlib.h>
> -#include <unistd.h>
> -#include <usctest.h>
> -#include <test.h>
> -#include <libclone.h>
> -
> -char *TCID = "pidns14";
> -int TST_TOTAL = 1;
> -
> -int child_fn(void *);
> -void cleanup(void);
> -
> -#define CHILD_PID	1
> -#define PARENT_PID	0
> -
> -/*
> - * child_fn() - Inside container
> - */
> -int child_fn(void *ttype)
> -{
> -	pid_t pid, ppid;
> -
> -	/* Set process id and parent pid */
> -	pid = getpid();
> -	ppid = getppid();
> -
> -	if ((pid != CHILD_PID) || (ppid != PARENT_PID)) {
> -		tst_resm(TBROK, "pidns is not created.");
> -		cleanup();
> -	}
> -	pause();
> -	tst_resm(TFAIL, "Oops! Container init resumed after receiving SIGUSR1");
> -	return -1;
> -}
> -
> -/*
> - * cleanup() - performs all ONE TIME cleanup for this test at
> - *			 completion or premature exit.
> - */
> -void cleanup()
> -{
> -	/* Clean the test testcase as LTP wants*/
> -	TEST_CLEANUP;
> -	tst_exit();
> -
> -}
> -
> -/***********************************************************************
> -*   M A I N
> -***********************************************************************/
> -
> -int main(int argc, char *argv[])
> -{
> -	int status;
> -	pid_t cpid;
> -
> -	cpid = do_clone(CLONE_NEWPID | SIGCHLD, child_fn, NULL);
> -
> -	if (cpid < 0) {
> -		tst_resm(TBROK, "clone() failed.");
> -		cleanup();
> -	}
> -
> -	sleep(1);
> -	/* Passing the SIGUSR1 to the container init */
> -	if (kill(cpid, SIGUSR1) != 0) {
> -		tst_resm(TBROK, "kill(SIGUSR1) fails.");
> -		cleanup();
> -	}
> -
> -	sleep(1);
> -	if (waitpid(cpid, &status, 0) < 0)
> -		tst_resm(TWARN, "waitpid() failed.");
> -
> -	if ((WIFSIGNALED(status)) && (WTERMSIG(status) == SIGUSR1))
> -		tst_resm(TPASS, "Container init is killed as expected, "
> -				" when the SIGUSR1 is passed from parent\n");
> -	 else
> -		tst_resm(TFAIL, "After sending signal kill -USR1, "
> -				"returned unexpected error\n");
> -
> -	return 0;
> -}	/* End main */
> diff --git a/testcases/kernel/containers/pidns/runpidnstest.sh b/testcases/kernel/containers/pidns/runpidnstest.sh
> index 12d3b34..03fed38 100644
> --- a/testcases/kernel/containers/pidns/runpidnstest.sh
> +++ b/testcases/kernel/containers/pidns/runpidnstest.sh
> @@ -85,12 +85,6 @@ if [ $rc -ne 0 ] && [ -z $err_code ]; then
>  	err_code=$rc
>  fi
>  
> -pidns14
> -rc=$?
> -if [ $rc -ne 0 ] && [ -z $err_code ]; then
> -	err_code=$rc
> -fi
> -
>  pidns16
>  rc=$?
>  if [ $rc -ne 0 ] && [ -z $err_code ]; then
> -- 
> 1.6.2.5
> 

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [LTP] Remove pidns14 test case
  2009-08-03 12:09 ` M. Mohan Kumar
@ 2009-08-04 12:06   ` Subrata Modak
  0 siblings, 0 replies; 4+ messages in thread
From: Subrata Modak @ 2009-08-04 12:06 UTC (permalink / raw)
  To: mohan; +Cc: ltp-list, sukadev, sachinp

Hi Mohan,

On Mon, 2009-08-03 at 17:39 +0530, M. Mohan Kumar wrote: 
> Hi Subrata,
> 
> July LTP release has partially removed pidns14 test case. Still the
> runpidnstest.sh script has reference to pidns14 test case. My patch removed
> all of the references. Could you please remove the reference to pidns14 in
> runpidnstest.sh script also?

Would you please mind resending a patch to do that ?

Regards--
Subrata

> 
> Regards,
> M. Mohan Kumar.
> 
> On Wed, Jul 22, 2009 at 11:59:05AM +0530, M. Mohan Kumar wrote:
> > [PATCH] Remove pidns14 test case
> > Container-init may be immune to unhandled fatal signals (like SIGUSR1)
> > even if they are from ancestor namespace. SIGKILL/SIGSTOP are the only
> > reliable signals to a container-init from ancestor namespace. So remove
> > test case pidns14 from container test suite. Please check git commit id
> > b3bfa0cba867f23365b81658b47efd906830879b for the kernel changes.
> > 
> > Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>
> > ---
> >  testcases/kernel/containers/pidns/pidns14.c       |  122 ---------------------
> >  testcases/kernel/containers/pidns/runpidnstest.sh |    6 -
> >  2 files changed, 0 insertions(+), 128 deletions(-)
> >  delete mode 100644 testcases/kernel/containers/pidns/pidns14.c
> > 
> > diff --git a/testcases/kernel/containers/pidns/pidns14.c b/testcases/kernel/containers/pidns/pidns14.c
> > deleted file mode 100644
> > index e95bf95..0000000
> > --- a/testcases/kernel/containers/pidns/pidns14.c
> > +++ /dev/null
> > @@ -1,122 +0,0 @@
> > -/*
> > -* Copyright (c) International Business Machines Corp., 2008
> > -* This program is free software; you can redistribute it and/or modify
> > -* it under the terms of the GNU General Public License as published by
> > -* the Free Software Foundation; either version 2 of the License, or
> > -* (at your option) any later version.
> > -* This program is distributed in the hope that it will be useful,
> > -* but WITHOUT ANY WARRANTY; without even the implied warranty of
> > -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
> > -* the GNU General Public License for more details.
> > -* You should have received a copy of the GNU General Public License
> > -* along with this program; if not, write to the Free Software
> > -* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
> > -*
> > -***************************************************************************
> > -* * Assertion:
> > -* * kill -USR1 container_init from outside a container
> > -* * 	$ Where init has not defined a custom handler for USR1
> > -* * 	$ Should kill the container
> > -* * 	$ else the test fails.
> > -* *
> > -* * Description:
> > -* *  This testcase creates container and waits till it is awakened by parent.
> > -* *  The parent process sends the SIGUSR1 to container init.
> > -* *  This would invoke default handler & terminate the container init.
> > -* *  In parent process verify, if the SIGUSR1 signal is passed to c-init.
> > -* *  If yes then Test is Passed else Test is Failed.
> > -* *
> > -* * History:
> > -* *  DATE	  NAME				   DESCRIPTION
> > -* *  14/11/08  Veerendra C  <vechandr@in.ibm.com> Verifying kill -USR1 in pidns
> > -*
> > -******************************************************************************/
> > -#include "config.h"
> > -
> > -#define _GNU_SOURCE 1
> > -#include <sys/wait.h>
> > -#include <sys/types.h>
> > -#include <signal.h>
> > -#include <stdlib.h>
> > -#include <unistd.h>
> > -#include <usctest.h>
> > -#include <test.h>
> > -#include <libclone.h>
> > -
> > -char *TCID = "pidns14";
> > -int TST_TOTAL = 1;
> > -
> > -int child_fn(void *);
> > -void cleanup(void);
> > -
> > -#define CHILD_PID	1
> > -#define PARENT_PID	0
> > -
> > -/*
> > - * child_fn() - Inside container
> > - */
> > -int child_fn(void *ttype)
> > -{
> > -	pid_t pid, ppid;
> > -
> > -	/* Set process id and parent pid */
> > -	pid = getpid();
> > -	ppid = getppid();
> > -
> > -	if ((pid != CHILD_PID) || (ppid != PARENT_PID)) {
> > -		tst_resm(TBROK, "pidns is not created.");
> > -		cleanup();
> > -	}
> > -	pause();
> > -	tst_resm(TFAIL, "Oops! Container init resumed after receiving SIGUSR1");
> > -	return -1;
> > -}
> > -
> > -/*
> > - * cleanup() - performs all ONE TIME cleanup for this test at
> > - *			 completion or premature exit.
> > - */
> > -void cleanup()
> > -{
> > -	/* Clean the test testcase as LTP wants*/
> > -	TEST_CLEANUP;
> > -	tst_exit();
> > -
> > -}
> > -
> > -/***********************************************************************
> > -*   M A I N
> > -***********************************************************************/
> > -
> > -int main(int argc, char *argv[])
> > -{
> > -	int status;
> > -	pid_t cpid;
> > -
> > -	cpid = do_clone(CLONE_NEWPID | SIGCHLD, child_fn, NULL);
> > -
> > -	if (cpid < 0) {
> > -		tst_resm(TBROK, "clone() failed.");
> > -		cleanup();
> > -	}
> > -
> > -	sleep(1);
> > -	/* Passing the SIGUSR1 to the container init */
> > -	if (kill(cpid, SIGUSR1) != 0) {
> > -		tst_resm(TBROK, "kill(SIGUSR1) fails.");
> > -		cleanup();
> > -	}
> > -
> > -	sleep(1);
> > -	if (waitpid(cpid, &status, 0) < 0)
> > -		tst_resm(TWARN, "waitpid() failed.");
> > -
> > -	if ((WIFSIGNALED(status)) && (WTERMSIG(status) == SIGUSR1))
> > -		tst_resm(TPASS, "Container init is killed as expected, "
> > -				" when the SIGUSR1 is passed from parent\n");
> > -	 else
> > -		tst_resm(TFAIL, "After sending signal kill -USR1, "
> > -				"returned unexpected error\n");
> > -
> > -	return 0;
> > -}	/* End main */
> > diff --git a/testcases/kernel/containers/pidns/runpidnstest.sh b/testcases/kernel/containers/pidns/runpidnstest.sh
> > index 12d3b34..03fed38 100644
> > --- a/testcases/kernel/containers/pidns/runpidnstest.sh
> > +++ b/testcases/kernel/containers/pidns/runpidnstest.sh
> > @@ -85,12 +85,6 @@ if [ $rc -ne 0 ] && [ -z $err_code ]; then
> >  	err_code=$rc
> >  fi
> >  
> > -pidns14
> > -rc=$?
> > -if [ $rc -ne 0 ] && [ -z $err_code ]; then
> > -	err_code=$rc
> > -fi
> > -
> >  pidns16
> >  rc=$?
> >  if [ $rc -ne 0 ] && [ -z $err_code ]; then
> > -- 
> > 1.6.2.5
> > 


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-08-04 12:07 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-07-22  6:29 [LTP] Remove pidns14 test case M. Mohan Kumar
2009-07-30 18:29 ` Subrata Modak
2009-08-03 12:09 ` M. Mohan Kumar
2009-08-04 12:06   ` Subrata Modak

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.