linux/tools/perf
Davidlohr Bueso 052b0f6eaf perf bench futex: Fix hung wakeup tasks after requeueing
The futex-requeue benchmark can hang because of missing wakeups once the
benchmark is done, ie:

[Run 1]: Requeued 1024 of 1024 threads in 0.3290 ms
perf: couldn't wakeup all tasks (135/1024)

This bug, while perhaps suggesting missing wakeups in kernel futex code,
is merely a consequence of the crappy FUTEX_CMP_REQUEUE man page,
incorrectly mentioning that the number of requeued tasks is in fact
returned, not the wakeups.

This patch acknowledges this and updates the corresponding futex_wake
code around it.

Signed-off-by: Davidlohr Bueso <dbueso@suse.de>
Cc: Mel Gorman <mgorman@suse.de>
Link: http://lkml.kernel.org/r/1429894848.10273.44.camel@stgolabs.net
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2015-04-27 13:57:49 -03:00
..
arch perf build: Add arch sparc objects building 2015-02-12 13:22:01 -03:00
bench perf bench futex: Fix hung wakeup tasks after requeueing 2015-04-27 13:57:49 -03:00
config perf build: Disable libbabeltrace check by default 2015-03-30 10:24:27 -03:00
Documentation perf kmem: Analyze page allocator events also 2015-04-13 11:44:52 -03:00
python perf python: Remove duplicate TID bit from mask 2013-08-07 17:35:25 -03:00
scripts perf build: Add scripts objects building 2015-02-12 11:49:53 -03:00
tests perf tools: Add 'I' event modifier for exclude_idle bit 2015-04-08 11:00:16 -03:00
ui perf hists browser: Indicate which callchain entries are annotated 2015-03-21 14:53:37 -03:00
util perf probe: Fix bug with global variables handling 2015-04-27 13:57:29 -03:00
.gitignore perf build: Use FEATURE-DUMP instead of PERF-FEATURES in the .gitignore file 2015-03-20 17:49:51 -03:00
Build perf tools: Add new 'perf data' command 2015-02-25 12:42:25 -03:00
builtin-annotate.c perf ordered_events: Shorten function signatures 2015-03-11 10:17:09 -03:00
builtin-bench.c perf bench: Add --repeat option 2014-06-19 16:13:15 -03:00
builtin-buildid-cache.c perf buildid-cache: Show usage with incorrect params 2015-02-27 15:52:40 -03:00
builtin-buildid-list.c perf ordered_events: Shorten function signatures 2015-03-11 10:17:09 -03:00
builtin-data.c perf data: Support using -f to override perf.data file ownership for 'convert' 2015-04-02 13:18:52 -03:00
builtin-diff.c perf diff: Add kallsyms option 2015-03-24 13:01:54 -03:00
builtin-evlist.c perf evlist: Support using -f to override perf.data file ownership 2015-04-02 13:18:45 -03:00
builtin-help.c perf tools: Add the bash completion for listing subsubcommands of perf help 2015-03-19 13:49:39 -03:00
builtin-inject.c perf inject: Support using -f to override perf.data file ownership 2015-04-02 13:18:45 -03:00
builtin-kmem.c perf kmem: Fix compiles on RHEL6/OL6 2015-04-24 12:44:47 -03:00
builtin-kvm.c perf kvm: Support using -f to override perf.data.guest file ownership 2015-04-02 13:18:47 -03:00
builtin-list.c perf list: Extend raw-dump to certain kind of events 2015-02-27 15:52:24 -03:00
builtin-lock.c perf lock: Support using -f to override perf.data file ownership 2015-04-02 13:18:48 -03:00
builtin-mem.c perf mem: Support using -f to override perf.data file ownership 2015-04-02 13:18:49 -03:00
builtin-probe.c perf probe: Check the orphaned -x option 2015-04-10 10:21:30 -03:00
builtin-record.c perf evlist: Fix type for references to data_head/tail 2015-04-10 11:29:20 -03:00
builtin-report.c perf report: Don't call map__kmap if map is NULL. 2015-04-08 11:00:00 -03:00
builtin-sched.c perf sched replay: Use replay_repeat to calculate the runavg of cpu usage instead of the default value 10 2015-04-08 09:07:27 -03:00
builtin-script.c perf script: Support using -f to override perf.data file ownership 2015-04-02 13:18:50 -03:00
builtin-stat.c perf evlist: Return the first evsel with an invalid filter in apply_filters() 2015-03-26 10:52:28 -03:00
builtin-timechart.c perf timechart: Support using -f to override perf.data file ownership 2015-04-02 13:18:50 -03:00
builtin-top.c perf top: Fix a segfault when kernel map is restricted. 2015-04-27 13:24:32 -03:00
builtin-trace.c perf trace: Disable events and drain events when forked workload ends 2015-04-23 17:08:08 -03:00
builtin.h perf tools: Add new 'perf data' command 2015-02-25 12:42:25 -03:00
command-list.txt perf tools: Add new 'perf data' command 2015-02-25 12:42:25 -03:00
CREDITS
design.txt perf tools: Update some code references in design.txt 2014-03-18 18:17:06 -03:00
Makefile perf tools: Set JOBS based on CPU or processor 2015-03-26 10:52:28 -03:00
Makefile.perf perf build: Disable libbabeltrace check by default 2015-03-30 10:24:27 -03:00
MANIFEST tools build: Add new build support 2015-02-11 18:30:03 -03:00
perf-archive.sh
perf-completion.sh perf tools: Avoid confusion with preloaded bash function for perf bash completion 2015-03-19 13:53:27 -03:00
perf-read-vdso.c perf tools: Build programs to copy 32-bit compatibility 2014-10-29 10:32:48 -02:00
perf-sys.h perf tools: Avoid build splat for syscall numbers with uclibc 2015-01-16 17:49:29 -03:00
perf-with-kcore.sh perf tools: Add perf-with-kcore script 2014-09-17 17:08:08 -03:00
perf.c perf tools: Fix the bash completion problem of 'perf --*' 2015-02-27 15:52:28 -03:00
perf.h perf record: Add clockid parameter 2015-04-08 10:04:55 -03:00