On Tuesday 16 April 2013 01:42:56 Michael Kerrisk (man-pages) wrote: > On Sun, Apr 7, 2013 at 9:03 PM, Mike Frysinger wrote: > > also, the quoted syscall signature isn't the whole story. there's > > actually more variants: > > #ifdef __ARCH_WANT_SYS_CLONE > > #ifdef CONFIG_CLONE_BACKWARDS > > SYSCALL_DEFINE5(clone, unsigned long, clone_flags, unsigned long, newsp, > > int __user *, parent_tidptr, > > int, tls_val, > > int __user *, child_tidptr) > > #elif defined(CONFIG_CLONE_BACKWARDS2) > > SYSCALL_DEFINE5(clone, unsigned long, newsp, unsigned long, clone_flags, > > int __user *, parent_tidptr, > > int __user *, child_tidptr, > > int, tls_val) > > #else > > SYSCALL_DEFINE5(clone, unsigned long, clone_flags, unsigned long, newsp, > > int __user *, parent_tidptr, > > int __user *, child_tidptr, > > int, tls_val) > > ... > > I've worked in some of the above detail; see the Git copy of the page. > > > these arches don't define __ARCH_WANT_SYS_CLONE: > > blackfin ia64 m68k sparc > > I'm not sure of the significance of the above; can you explain? the three clone variants i posted above are bracketed by the define __ARCH_WANT_SYS_CLONE. so if the arch doesn't define that, it means it has its own implementation of clone() in its arch/$ARCH/ tree, so the exact prototype has to be tracked down from there. -mike
Attachment:
signature.asc
Description: This is a digitally signed message part.