On Tue, Jan 06, 2015 at 07:22:15PM +0530, Vineet Gupta wrote: > uClibc Linuxthreads.old doesnt support pthread_attr_setaffinity_np() > call > > ----------------->8----------------------- > CC bench/futex-hash.o > CC bench/futex-wake.o > bench/futex-hash.c: In function 'bench_futex_hash': > bench/futex-hash.c:161:3: error: implicit declaration of function > 'pthread_attr_setaffinity_np' [-Werror=implicit-function-declaration] > ret = pthread_attr_setaffinity_np(&thread_attr, sizeof(cpu_set_t), > &cpu); > ^ > bench/futex-hash.c:161:3: error: nested extern declaration of > 'pthread_attr_setaffinity_np' [-Werror=nested-externs] > ----------------->8----------------------- > > Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx> > --- > tools/perf/bench/futex.h | 13 +++++++++++++ > tools/perf/config/Makefile | 6 ++++++ > tools/perf/config/feature-checks/Makefile | 4 ++++ > tools/perf/config/feature-checks/test-all.c | 5 +++++ > 4 files changed, 28 insertions(+) It seems that you fotgot to add the real test file (test-pthread_attr_setaffinity_np.c?) here.. Thanks, Namhyung > > diff --git a/tools/perf/bench/futex.h b/tools/perf/bench/futex.h > index 71f2844cf97f..7ed22ff1e1ac 100644 > --- a/tools/perf/bench/futex.h > +++ b/tools/perf/bench/futex.h > @@ -68,4 +68,17 @@ futex_cmp_requeue(u_int32_t *uaddr, u_int32_t val, u_int32_t *uaddr2, int nr_wak > val, opflags); > } > > +#ifndef HAVE_PTHREAD_ATTR_SETAFFINITY_NP > +#include <pthread.h> > +static inline int pthread_attr_setaffinity_np(pthread_attr_t *attr, > + size_t cpusetsize, > + cpu_set_t *cpuset) > +{ > + attr = attr; > + cpusetsize = cpusetsize; > + cpuset = cpuset; > + return 0; > +} > +#endif > + > #endif /* _FUTEX_H */ > diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile > index 5d4b039fe1ed..6b59662136fa 100644 > --- a/tools/perf/config/Makefile > +++ b/tools/perf/config/Makefile > @@ -198,6 +198,7 @@ CORE_FEATURE_TESTS = \ > libpython-version \ > libslang \ > libunwind \ > + pthread-attr-setaffinity-np \ > stackprotector-all \ > timerfd \ > libdw-dwarf-unwind \ > @@ -226,6 +227,7 @@ VF_FEATURE_TESTS = \ > libelf-getphdrnum \ > libelf-mmap \ > libpython-version \ > + pthread-attr-setaffinity-np \ > stackprotector-all \ > timerfd \ > libunwind-debug-frame \ > @@ -301,6 +303,10 @@ ifeq ($(feature-sync-compare-and-swap), 1) > CFLAGS += -DHAVE_SYNC_COMPARE_AND_SWAP_SUPPORT > endif > > +ifeq ($(feature-pthread-attr-setaffinity-np), 1) > + CFLAGS += -DHAVE_PTHREAD_ATTR_SETAFFINITY_NP > +endif > + > ifndef NO_BIONIC > $(call feature_check,bionic) > ifeq ($(feature-bionic), 1) > diff --git a/tools/perf/config/feature-checks/Makefile b/tools/perf/config/feature-checks/Makefile > index 53f19b5dbc37..e9b99bb29348 100644 > --- a/tools/perf/config/feature-checks/Makefile > +++ b/tools/perf/config/feature-checks/Makefile > @@ -25,6 +25,7 @@ FILES= \ > test-libslang.bin \ > test-libunwind.bin \ > test-libunwind-debug-frame.bin \ > + test-pthread-attr-setaffinity-np.bin \ > test-stackprotector-all.bin \ > test-timerfd.bin \ > test-libdw-dwarf-unwind.bin \ > @@ -47,6 +48,9 @@ test-all.bin: > test-hello.bin: > $(BUILD) > > +test-pthread-attr-setaffinity-np.bin: > + $(BUILD) -Werror > + > test-stackprotector-all.bin: > $(BUILD) -Werror -fstack-protector-all > > diff --git a/tools/perf/config/feature-checks/test-all.c b/tools/perf/config/feature-checks/test-all.c > index 652e0098eba6..6d4d09323922 100644 > --- a/tools/perf/config/feature-checks/test-all.c > +++ b/tools/perf/config/feature-checks/test-all.c > @@ -97,6 +97,10 @@ > # include "test-zlib.c" > #undef main > > +#define main main_test_pthread_attr_setaffinity_np > +# include "test-pthread_attr_setaffinity_np.c" > +#undef main > + > int main(int argc, char *argv[]) > { > main_test_libpython(); > @@ -121,6 +125,7 @@ int main(int argc, char *argv[]) > main_test_libdw_dwarf_unwind(); > main_test_sync_compare_and_swap(argc, argv); > main_test_zlib(); > + main_test_pthread_attr_setaffinity_np(); > > return 0; > } > -- > 1.9.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html