Messages in this thread | | | From | Jiri Olsa <> | Subject | [PATCH 0/6] perf tools: Share map groups within process | Date | Tue, 18 Mar 2014 15:46:50 +0100 |
| |
hi, this patchset moves thread's map_groups to be dynamically allocated and shared within process threads.
The main benefit would be to be able to look up memory map from any thread that belongs to the process.
This implements one of the solution ideas for issue described by Don in following thread: http://marc.info/?l=linux-kernel&m=139403876017159&w=2
RFC changes: - added automated test for thread map groups get/put methods - fix reference count for case described by Namhyung - rename the mmap-events.c test to mmap-thread-lookup.c - added PROT_EXEC to mmap call in tests/mmap-thread-lookup.c as it's not implied by default on all archs (Namhyung) - lazy mg allocation in thread__find_addr_map (Namhyung) - fix compilation failures (Arnaldo)
also available in here: git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git perf/core_mmaps
thanks, jirka
Signed-off-by: Jiri Olsa <jolsa@redhat.com> Cc: Don Zickus <dzickus@redhat.com> Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com> Cc: David Ahern <dsahern@gmail.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Ingo Molnar <mingo@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net> --- Jiri Olsa (6): perf tests: Add thread maps lookup automated tests perf tools: Remove thread__find_map function perf tools: Allocate thread map_groups dynamically perf tools: Add machine pointer into thread struct perf tools: Share process map groups within process threads perf tests: Add map groups sharing with thread object test
tools/perf/Makefile.perf | 2 + tools/perf/arch/x86/tests/dwarf-unwind.c | 9 +++- tools/perf/perf.h | 6 +++ tools/perf/tests/builtin-test.c | 8 ++++ tools/perf/tests/mmap-thread-lookup.c | 233 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ tools/perf/tests/tests.h | 2 + tools/perf/tests/thread-mg-share.c | 110 +++++++++++++++++++++++++++++++++++++++++++ tools/perf/ui/stdio/hist.c | 9 +++- tools/perf/util/event.c | 10 +++- tools/perf/util/machine.c | 8 ++-- tools/perf/util/map.h | 3 +- tools/perf/util/thread.c | 120 +++++++++++++++++++++++++++++++++++++++++----- tools/perf/util/thread.h | 19 ++++---- 13 files changed, 508 insertions(+), 31 deletions(-) create mode 100644 tools/perf/tests/mmap-thread-lookup.c create mode 100644 tools/perf/tests/thread-mg-share.c
| |