util: Add own prototype for __clone2() on ia64
ia64 needs to use __clone2() as clone() is not available, but glibc doesn't export the prototype. Take it from clone(2) to avoid an implicit declaration: util.c: In function ‘do_clone’: util.c:512:16: warning: implicit declaration of function ‘__clone2’ [-Wimplicit-function-declaration] 512 | return __clone2(fn, stack_area + stack_size / 2, stack_size / 2, | ^~~~~~~~ Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
This commit is contained in:
parent
b1b75bd73a
commit
c538ee8d69
1 changed files with 9 additions and 0 deletions
9
util.c
9
util.c
|
@ -495,6 +495,15 @@ int write_file(const char *path, const char *buf)
|
||||||
return len == 0 ? 0 : -1;
|
return len == 0 ? 0 : -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef __ia64__
|
||||||
|
/* Needed by do_clone() below: glibc doesn't export the prototype of __clone2(),
|
||||||
|
* use the description from clone(2).
|
||||||
|
*/
|
||||||
|
int __clone2(int (*fn)(void *), void *stack_base, size_t stack_size, int flags,
|
||||||
|
void *arg, ... /* pid_t *parent_tid, struct user_desc *tls,
|
||||||
|
pid_t *child_tid */ );
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* do_clone() - Wrapper of __clone2() for ia64, clone() for other architectures
|
* do_clone() - Wrapper of __clone2() for ia64, clone() for other architectures
|
||||||
* @fn: Entry point for child
|
* @fn: Entry point for child
|
||||||
|
|
Loading…
Reference in a new issue