public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
From: Cyril Hrubis <chrubis@suse.cz>
To: "Jiri Palecek >" <"<jirka"@suse.de>
Cc: ltp-list@lists.sourceforge.net
Subject: Re: [LTP] [PATCH] Adapt the cgroup/test_6_2 test to the various	ways clone is called on different architectures
Date: Wed, 24 Jun 2009 16:12:48 +0200	[thread overview]
Message-ID: <20090624141248.GA9577@schrodinger.suse.cz> (raw)

Hi,
that's the clone() check I was speaking about here. IMHO much cleaner solution
is to create some directory in ltp root (someting like libftest) and put all
such headers and code there, so they are not copied and spread all around ltp.

>  Code shamelessly taken from clone01 test
> 
> Signed-off-by: Jiri Palecek <jpalecek@web.de>
> ---
>  .../kernel/controllers/cgroup/clone_platform.h     |   34 ++++++++++++++++++++
>  testcases/kernel/controllers/cgroup/test_6_2.c     |   12 ++++++-
>  2 files changed, 45 insertions(+), 1 deletions(-)
>  create mode 100644 testcases/kernel/controllers/cgroup/clone_platform.h
> 
> diff --git a/testcases/kernel/controllers/cgroup/clone_platform.h b/testcases/kernel/controllers/cgroup/clone_platform.h
> new file mode 100644
> index 0000000..1785dd1
> --- /dev/null
> +++ b/testcases/kernel/controllers/cgroup/clone_platform.h
> @@ -0,0 +1,34 @@
> +/*
> + * Copyright (c) 2003 Silicon Graphics, Inc.  All Rights Reserved.
> + *
> + * This program is free software; you can redistribute it and/or modify it
> + * under the terms of version 2 of the GNU General Public License as
> + * published by the Free Software Foundation.
> + *
> + * This program is distributed in the hope that it would be useful, but
> + * WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> + *
> + * You should have received a copy of the GNU General Public License along
> + * with this program; if not, write the Free Software Foundation, Inc., 59
> + * Temple Place - Suite 330, Boston MA 02111-1307, USA.
> + *
> + */
> +/* Common platform specific defines for the clone system call tests */
> +
> +//#define CHILD_STACK_SIZE 8192
> +#define CHILD_STACK_SIZE 16384
> +
> +#if defined (__s390__) || (__s390x__)
> +#define clone __clone
> +extern int __clone(int(void*),void*,int,void*);
> +#elif defined(__ia64__)
> +#define clone2 __clone2
> +/* Prototype provided by David Mosberger				*/
> +/* int  __clone2(int (*fn) (void *arg), void *child_stack_base,		*/
> +/* 		size_t child_stack_size, int flags, void *arg,		*/
> +/*		pid_t *parent_tid, void *tls, pid_t *child_tid)		*/
> +extern int  __clone2(int (*fn) (void *arg), void *child_stack_base, 
> +		size_t child_stack_size, int flags, void *arg, 
> +		pid_t *parent_tid, void *tls, pid_t *child_tid); 
> +#endif
> diff --git a/testcases/kernel/controllers/cgroup/test_6_2.c b/testcases/kernel/controllers/cgroup/test_6_2.c
> index e5bddb2..79f5c20 100644
> --- a/testcases/kernel/controllers/cgroup/test_6_2.c
> +++ b/testcases/kernel/controllers/cgroup/test_6_2.c
> @@ -24,6 +24,8 @@
>  #include <unistd.h>
>  #include <sched.h>
>  
> +#include "clone_platform.h"
> +
>  #define DEFAULT_USEC	30000
>  
>  int foo(void __attribute__((unused)) *arg)
> @@ -42,7 +44,15 @@ int main(int argc, char **argv)
>  
>  	while (1) {
>  		usleep(usec);
> -		clone(foo, stack+4096, CLONE_NEWNS, NULL);
> +#if defined(__hppa__)
> +		clone(foo, stack, CLONE_NEWNS, NULL);
> +#elif defined(__ia64__)
> +		clone2(foo, stack,
> +			    4096, CLONE_NEWNS, NULL, NULL, NULL, NULL);
> +#else
> +		clone
> +		     (foo, stack + 4096, CLONE_NEWNS, NULL);
> +#endif
>  	}
>  
>  	return 0;

-- 
Cyril Hrubis
chrubis@suse.cz

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

             reply	other threads:[~2009-06-24 14:12 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-24 14:12 Cyril Hrubis [this message]
     [not found] <200906220256.n5M2uvax024525@e33.co.us.ibm.com>
2009-06-23 14:50 ` [LTP] [PATCH] Adapt the cgroup/test_6_2 test to the various ways clone is called on different architectures Subrata Modak
  -- strict thread matches above, loose matches on Subject: below --
2009-06-19 14:14 Jiri Palecek >

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090624141248.GA9577@schrodinger.suse.cz \
    --to=chrubis@suse.cz \
    --cc="<jirka"@suse.de \
    --cc=ltp-list@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox