| Dummy pthread_setaffinity_np() when not available |
| |
| On uClibc configurations that do not use the NPTL thread |
| implementation, pthread_setaffinity_np() is not available. This patch |
| defines a dummy (empty) implementation of this function for such |
| cases. |
| |
| The only few architectures that do not provide the NPTL thread |
| implementation are very likely to be non-SMP architectures, and |
| therefore, setting the affinity of the thread is not doing anything |
| useful, so having an empty stub for pthread_setaffinity_np() is not a |
| problem. |
| |
| Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> |
| |
| Index: b/src/current/iozone.c |
| =================================================================== |
| --- a/src/current/iozone.c |
| +++ b/src/current/iozone.c |
| @@ -306,6 +306,17 @@ |
| #endif |
| #endif |
| |
| +#if defined (__linux__) |
| +#include <features.h> |
| +#if defined (__UCLIBC__) && !defined (__UCLIBC_HAS_THREADS_NATIVE__) |
| +static int pthread_setaffinity_np(pthread_t thread, size_t cpusetsize, |
| + const cpu_set_t *cpuset) |
| +{ |
| + return 0; |
| +} |
| +#endif |
| +#endif |
| + |
| #if ((defined(solaris) && defined(__LP64__)) || defined(__s390x__)) |
| /* If we are building for 64-bit Solaris, all functions that return pointers |
| * must be declared before they are used; otherwise the compiler will assume |