Serge E. Hallyn wrote:
> Quoting Veerendra ([EMAIL PROTECTED]):
>
>> Veerendra wrote:
>>
>>> Signed-off-by: Veerendra C <[EMAIL PROTECTED]>
>>>
>>> This patch consists of the files..
>>>
>>> containers/libclone/libclone.h
>>> containers/libclone/libnetns.c
>>> containers/libclone/Makefile
>>>
>>>
>>> Regards
>>> Veerendra C
>>>
>>>
>>>
>>>
>> Attaching the patch..
>>
>>
>>
>
>
>> Index: containers/libclone/libclone.h
>> ===================================================================
>> --- containers.orig/libclone/libclone.h
>> +++ containers/libclone/libclone.h
>> @@ -58,6 +58,46 @@ extern int __clone2(int (*fn) (void *ar
>> pid_t *parent_tid, void *tls, pid_t *child_tid);
>> #endif
>>
>> +#ifndef HAVE_UNSHARE
>> +
>> +#if __i386__
>> +# define __NR_unshare 310
>> +#elif __x86_64__
>> +# define __NR_unshare 272
>> +#elif __ia64__
>> +# define __NR_unshare 1296
>> +#elif __s390x__
>> +# define __NR_unshare 303
>> +#elif __powerpc__
>> +# define __NR_unshare 282
>> +#else
>> +# error "Architecture not supported"
>> +#endif
>>
>
> The existing libclone.h already tries to define these for arches that
> need them. I certainly believe that there are distributions which
> are still funky, but let's understand why.
>
> Do you have a machine of your own on which you needed this? Can you
> remove this bit and let me know what happens?
>
If I remove the above entries, and if I have only this entry now in my
libclone.h
#ifndef SYS_unshare
#ifdef __NR_unshare
#define SYS_unshare __NR_unshare
#elif __i386__
#define SYS_unshare 310
#elif __ia64__
#define SYS_unshare 1296
#elif __x86_64__
#define SYS_unshare 272
#elif __s390x__ || __s390__
#define SYS_unshare 303
#elif __powerpc__
#define SYS_unshare 282
#else
#error "unshare not supported on this architecure."
#endif
#endif
I am getting this
e326m:~/tmp/ltp-full-20080731/testcases/kernel/containers/libclone # make
cc -c -o libclone.o libclone.c
In file included from libclone.c:17:
libclone.h: In function ‘unshare’:
libclone.h:83: error: ‘__NR_unshare’ undeclared (first use in this function)
libclone.h:83: error: (Each undeclared identifier is reported only once
libclone.h:83: error: for each function it appears in.)
make: *** [libclone.o] Error 1
So the variables SYS_unshare or the __NR_unshare is not defined.
I tried this on the tree ( 2.6.27-rc2 kernel)
git://git.kernel.org/pub/scm/linux/kernel/git/daveh/linux-2.6-lxc.git
How do I proceed ?
Regards
Veerendra C
>> +
>> +static inline int unshare(unsigned long flags)
>> +{
>> + return syscall(__NR_unshare, flags);
>> +}
>> +
>> +#endif /* HAVE_UNSHARE */
>>
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list