perf bench futex: Use cpumaps
authorDavidlohr Bueso <dave@stgolabs.net>
Mon, 27 Nov 2017 04:20:59 +0000 (20:20 -0800)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 30 Nov 2017 17:02:05 +0000 (14:02 -0300)
commit3b2323c2c1c4acf8961cfcdddcee9889daaa21e3
treea366e8b5137d89f10885ff7d0e6ade8ed0cbf047
parent17a68b835921c4664929376447cae5e3374ce2a7
perf bench futex: Use cpumaps

It was reported that the whole futex bench breaks when dealing with
non-contiguously numbered cpus.

$ echo 0 | sudo tee /sys/devices/system/cpu/cpu3/online
$ ./perf bench futex all
 perf: pthread_create: Operation not permitted
 Run summary [PID 14934]: 7 threads, each ....

James had implemented an approach with cpumaps that use an in house
flavor. Instead of re-inventing the wheel, I've redone the patch such
that we use the perf's util/cpumap.c interface instead.

Applies to all futex benchmarks.

Suggested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Originally-from: James Yang <james.yang@arm.com>
Signed-off-by: Davidlohr Bueso <dbueso@suse.de>
Cc: Davidlohr Bueso <dbueso@suse.de>
Cc: Kim Phillips <kim.phillips@arm.com>
Link: http://lkml.kernel.org/r/20171127042101.3659-2-dave@stgolabs.net
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/bench/futex-hash.c
tools/perf/bench/futex-lock-pi.c
tools/perf/bench/futex-requeue.c
tools/perf/bench/futex-wake-parallel.c
tools/perf/bench/futex-wake.c