Re: [RFC][v5][PATCH 8/8]: Define clone_with_pids() syscall

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



H. Peter Anvin [hpa@xxxxxxxxx] wrote:
| On 09/09/2009 05:19 AM, Arnd Bergmann wrote:
| > 
| > This is a complex problem. The structure above would need a conversion
| > for the pointer size that you can avoid by using a u64, but that introduces
| > another problem:
| > 
| > 2. use a single pointer, with variable length data structures:
| > 
| > struct pid_set {
| > 	int num_pids;
| > 	pid_t pids[0];
| > };
| > 
| > Since pid_t is always an int, you have no problem with padding or
| > incompatible types, but rely on a data structure definition that
| > is not in C89 (not sure about C99).

C90 or C99 below should work. Is it ok to use a data structure that is
not in C89 ? 

BTW, would it work if we defined 

	struct pid_set {
		u64 pids;
		int num_pids;
	}

where ->pids can be still be a pointer ? The data structure would
have the same size on all architectures.

Thanks for the input

Sukadev
_______________________________________________
Containers mailing list
Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/containers

[Index of Archives]     [Cgroups]     [Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux