[GIT PULL] perf changes for v2.6.38

From: Ingo Molnar
Date: Thu Jan 06 2011 - 04:17:26 EST


Linus,

Please pull the latest perf-core-for-linus git tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git perf-core-for-linus

Thanks,

Ingo

------------------>
Akihiro Nagai (1):
perf options: add OPT_CALLBACK_DEFAULT_NOOPT

Andi Kleen (1):
x86: Set cpu masks before calling CPU_STARTING notifiers

Arnaldo Carvalho de Melo (32):
perf tools: Change my maintainer address
perf record: Add option to disable collecting build-ids
perf events: Default to using event__process_lost
perf tools: Fix lost and unknown events handling
perf events: Precalculate the header space for PERF_SAMPLE_ fields
perf debug: Simplify trace_event
perf stat: Use --big-num format by default
perf events: Separate the routines handling the PERF_SAMPLE_ identity fields
perf events: Make sample_type identity fields available in all PERF_RECORD_ events
perf session: Parse sample earlier
perf tools: Ask for ID PERF_SAMPLE_ info on all PERF_RECORD_ events
perf session: Remove unneeded dump_printf calls
perf symbols: Improve kallsyms symbol end addr calculation
perf test: Look forward for symbol aliases
perf script: Finish the rename from trace to script
perf record: Fix use of sample_id_all userspace with !sample_id_all kernels
perf script: Fix event ordering settings to work with older kernels
perf tools: Introduce event selectors
perf evsel: Adopt MATCH_EVENT macro from 'stat'
perf util: Move do_read from session to util
perf evsel: Delete the event selectors at exit
perf evsel: Steal the counter reading routines from stat
perf evsel: Introduce per cpu and per thread open helpers
perf tools: Refactor cpumap to hold nr and the map
perf tools: Refactor all_tids to hold nr and the map
perf evsel: Use {cpu,thread}_map to shorten list of parameters
perf evsel: Auto allocate resources needed for some methods
perf test: Add test for counting open syscalls
perf test: Clarify some error reports in the open syscall test
perf session: Warn about errors when processing pipe events too
perf script: Use the default lost event handler
perf script: Make some lists static

Chris Samuel (1):
perf tools: Catch a few uncheck calloc/malloc's

Corey Ashford (2):
perf stat: Change and clean up sys_perf_event_open error handling
perf tools: fix event parsing of comma-separated tracepoint events

Cyrill Gorcunov (1):
perf, x86: P4 PMU - describe config format

David Ahern (2):
perf report: Allow user to specify path to kallsyms file
perf symbols: Add symfs option for off-box analysis using specified tree

Don Zickus (8):
x86, nmi_watchdog: Remove the old nmi_watchdog
x86, nmi_watchdog: Remove all stub function calls from old nmi_watchdog
perf packaging: add memcpy to perf MANIFEST
lockup detector: Compile fixes from removing the old x86 nmi watchdog
x86, NMI: Add back unknown_nmi_panic and nmi_watchdog sysctls
x86, watchdog: Compile fix when CONFIG_LOCAL_APIC not enabled
x86, nmi_watchdog: Remove ARCH_HAS_NMI_WATCHDOG and rely on CONFIG_HARDLOCKUP_DETECTOR
x86: Only call smp_processor_id in non-preempt cases

Dongdong Deng (1):
x86: Avoid calling arch_trigger_all_cpu_backtrace() at the same time

Franck Bui-Huu (11):
perf: Introduce is_sampling_event()
perf: Limit event refresh to sampling event
perf: Don't bother to init the hrtimer for no SW sampling counters
perf probe: Make -L display the absolute path of the dumped file
perf probe: Rewrite show_one_line() to make it simpler
perf probe: Clean up redundant tests in show_line_range()
perf probe: Fix line range description since a single file is allowed
perf probe: Don't always consider EOF as an error when listing source code
perf probe: Handle gracefully some stupid and buggy line syntaxes
perf probe: Fix wrong warning in __show_one_line() if read(1) errors happen
perf probe: Fix short file name probe location reporting

Frederic Weisbecker (5):
tracing: New flag to allow non privileged users to use a trace event
tracing: New macro to set up initial event flags value
tracing: Allow raw syscall trace events for non privileged users
tracing: Allow syscall trace events for non privileged users
tracing: Remove useless syscall ftrace_event_call declaration

Hitoshi Mitake (2):
perf bench: Print both of prefaulted and no prefaulted results by default
perf bench: Add feature that measures the performance of the arch/x86/lib/memcpy_64.S memcpy routines via 'perf bench mem'

Huang Ying (1):
x86, NMI: Add touch_nmi_watchdog to io_check_error delay

Ian Munsie (5):
perf symbols: Correct final kernel map guesses
perf hist: Better displaying of unresolved DSOs and symbols
perf makefile: Allow strong and weak functions in LIB_OBJS
perf session: Fallback to unordered processing if no sample_id_all
perf record,report,annotate,diff: Process events in order

Ingo Molnar (2):
perf: Rename 'perf trace' to 'perf script'
perf, sparc: Fix CONFIG_PERF_EVENTS=y build error

Jean Pihet (2):
perf: Add calls to suspend trace point
tools, perf: Documentation for the power events API

Masami Hiramatsu (9):
kprobes: Rename old_p to more appropriate name
kprobes: Cleanup disabling and unregistering path
kprobes: Separate kprobe optimizing code from optimizer
kprobes: Support delayed unoptimizing
kprobes: Reuse unused kprobe
x86: Introduce text_poke_smp_batch() for batch-code modifying
kprobes: Use text_poke_smp_batch for optimizing
kprobes: Use text_poke_smp_batch for unoptimizing
perf probe: Cleanup messages

Peter Zijlstra (11):
scripts/tags.sh: Add magic for trace-events
perf: Ignore non-sampling overflows
perf, arch: Cleanup perf-pmu init vs lockup-detector
perf, amd: Remove the nb lock
perf: Stop all counters on reboot
perf, x86: Detect broken BIOSes that corrupt the PMU
perf: Move perf_event_init() into main.c
init: Initialized IDR earlier
perf: Dynamic pmu types
perf: Sysfs enumeration
perf, x86: Provide a PEBS capable cycle event

Rakib Mullick (1):
x86: Address 'unused' warning in hw_nmi.c again

Robert Morell (1):
perf tools: Remove hardcoded include paths for elfutils

Robert Richter (2):
oprofile, x86: Add support for AMD family 15h
oprofile, x86: Add support for 6 counters (AMD family 15h)

Shawn Bohrer (15):
perf trace: Handle DT_UNKNOWN on filesystems that don't support d_type
perf annotate: Document missing options.
perf buildid-list: Document missing options
perf diff: Fix displacement and modules options short flag
perf diff: Document missing options
perf kvm: Document missing options
perf lock: Document missing options
perf probe: Fix spelling mistake in documentation
perf record: Document missing options
perf report: Document missing options
perf sched: Document missing options
perf top: Document missing options
perf trace: Document missing options
perf test: Fix spelling mistake in documentation
perf stat: Document missing options

Soeren Sandmann Pedersen (1):
x86: Eliminate bp argument from the stack tracing routines

Stephane Eranian (4):
perf stat: Add no-aggregation mode to -a
perf stat: Add csv-style output
perf script: Fix compiler warning in builtin_script.c:is_top_script()
perf tools: Fix perf_event.h header usage

Steven Rostedt (2):
tracing/events: Show real number in array fields
tracing: Add TRACE_EVENT_CONDITIONAL()

Thomas Gleixner (19):
perf session: Fix list sort algorithm
perf session: Use appropriate pointer type instead of silly typecasting
perf session: Cleanup __perf_session__process_events()
perf session: Move ui_progress_update in __perf_session__process_events()
perf session: Simplify termination checks
perf session: Use sensible mmap size
perf session: Keep file mmaped instead of malloc/memcpy
perf session: Cache sample objects
perf session: Allocate chunks of sample objects
perf events: Fix event inherit fallout of precalculated headers
perf session: Sort all events if ordered_samples=true
perf event: Prevent unbound event__name array access
perf session: Dont queue events w/o timestamps
perf session: Consolidate the dump code
perf session: Store file offset in sample_queue
perf session: Add file_offset to event delivery function
perf session: Move dump code to event delivery path
perf session: Split out sample preprocessing
perf session: Split out user event processing

Thomas Renninger (3):
perf: Do not export power_frequency, but power_start event
perf: Clean up power events by introducing new, more generic ones
perf timechart: Adjust perf timechart to the new power events

Wu Zhangjin (1):
ftrace: Speed up recordmcount


CREDITS | 2 -
Documentation/kernel-parameters.txt | 10 +-
Documentation/trace/events-power.txt | 90 +++
MAINTAINERS | 2 +-
arch/alpha/include/asm/perf_event.h | 6 -
arch/alpha/kernel/irq_alpha.c | 2 -
arch/alpha/kernel/perf_event.c | 11 +-
arch/arm/kernel/perf_event.c | 4 +-
arch/mips/kernel/perf_event_mipsxx.c | 2 +-
arch/powerpc/kernel/e500-pmu.c | 2 +-
arch/powerpc/kernel/mpc7450-pmu.c | 2 +-
arch/powerpc/kernel/perf_event.c | 2 +-
arch/powerpc/kernel/perf_event_fsl_emb.c | 2 +-
arch/powerpc/kernel/power4-pmu.c | 2 +-
arch/powerpc/kernel/power5+-pmu.c | 2 +-
arch/powerpc/kernel/power5-pmu.c | 2 +-
arch/powerpc/kernel/power6-pmu.c | 2 +-
arch/powerpc/kernel/power7-pmu.c | 2 +-
arch/powerpc/kernel/ppc970-pmu.c | 2 +-
arch/sh/kernel/cpu/sh4/perf_event.c | 2 +-
arch/sh/kernel/cpu/sh4a/perf_event.c | 2 +-
arch/sh/kernel/perf_event.c | 2 +-
arch/sparc/include/asm/perf_event.h | 4 -
arch/sparc/kernel/nmi.c | 2 -
arch/sparc/kernel/perf_event.c | 9 +-
arch/x86/include/asm/alternative.h | 7 +
arch/x86/include/asm/irq.h | 4 -
arch/x86/include/asm/kdebug.h | 2 +-
arch/x86/include/asm/msr-index.h | 4 +
arch/x86/include/asm/nmi.h | 53 +--
arch/x86/include/asm/perf_event.h | 2 -
arch/x86/include/asm/perf_event_p4.h | 63 ++-
arch/x86/include/asm/smpboot_hooks.h | 1 -
arch/x86/include/asm/stacktrace.h | 33 +-
arch/x86/include/asm/timer.h | 6 -
arch/x86/kernel/alternative.c | 49 ++-
arch/x86/kernel/apic/Makefile | 5 +-
arch/x86/kernel/apic/apic.c | 15 +-
arch/x86/kernel/apic/hw_nmi.c | 36 +-
arch/x86/kernel/apic/io_apic.c | 46 --
arch/x86/kernel/apic/nmi.c | 567 -----------------
arch/x86/kernel/cpu/common.c | 1 -
arch/x86/kernel/cpu/perf_event.c | 74 ++-
arch/x86/kernel/cpu/perf_event_amd.c | 16 +-
arch/x86/kernel/cpu/perf_event_intel.c | 26 +
arch/x86/kernel/cpu/perfctr-watchdog.c | 644 +-------------------
arch/x86/kernel/dumpstack.c | 12 +-
arch/x86/kernel/dumpstack_32.c | 25 +-
arch/x86/kernel/dumpstack_64.c | 24 +-
arch/x86/kernel/kprobes.c | 113 ++++-
arch/x86/kernel/process.c | 10 +-
arch/x86/kernel/process_32.c | 2 +-
arch/x86/kernel/process_64.c | 2 +
arch/x86/kernel/smpboot.c | 22 +-
arch/x86/kernel/stacktrace.c | 8 +-
arch/x86/kernel/time.c | 18 -
arch/x86/kernel/traps.c | 35 +-
arch/x86/mm/kmemcheck/error.c | 2 +-
arch/x86/oprofile/backtrace.c | 2 +-
arch/x86/oprofile/nmi_int.c | 3 +
arch/x86/oprofile/nmi_timer_int.c | 3 -
arch/x86/oprofile/op_model_amd.c | 54 ++-
arch/x86/oprofile/op_model_p4.c | 2 +-
drivers/acpi/acpica/nsinit.c | 2 -
drivers/cpufreq/cpufreq.c | 1 +
drivers/cpuidle/cpuidle.c | 1 +
drivers/idle/intel_idle.c | 3 +-
drivers/watchdog/hpwdt.c | 11 +-
include/linux/ftrace_event.h | 14 +
include/linux/kprobes.h | 4 +-
include/linux/nmi.h | 10 +-
include/linux/perf_event.h | 26 +-
include/linux/sched.h | 4 +
include/linux/stacktrace.h | 4 +-
include/linux/syscalls.h | 10 +-
include/linux/tracepoint.h | 33 +-
include/trace/define_trace.h | 15 +
include/trace/events/power.h | 98 +++-
include/trace/events/syscalls.h | 4 +
include/trace/ftrace.h | 21 +-
init/main.c | 5 +-
kernel/hw_breakpoint.c | 2 +-
kernel/kprobes.c | 565 ++++++++++++------
kernel/perf_event.c | 573 +++++++++++++-----
kernel/power/suspend.c | 3 +
kernel/sched.c | 2 -
kernel/sysctl.c | 16 +-
kernel/sysctl_binary.c | 1 -
kernel/trace/Kconfig | 15 +
kernel/trace/power-traces.c | 5 +-
kernel/trace/trace_event_perf.c | 31 +-
kernel/trace/trace_events.c | 6 +
kernel/trace/trace_export.c | 14 +-
kernel/watchdog.c | 9 +-
lib/Kconfig.debug | 3 +-
scripts/Makefile.build | 13 +-
tools/perf/Documentation/perf-annotate.txt | 37 ++-
tools/perf/Documentation/perf-buildid-list.txt | 3 +
tools/perf/Documentation/perf-diff.txt | 21 +-
tools/perf/Documentation/perf-kvm.txt | 8 +-
tools/perf/Documentation/perf-lock.txt | 15 +
tools/perf/Documentation/perf-probe.txt | 4 +-
tools/perf/Documentation/perf-record.txt | 22 +-
tools/perf/Documentation/perf-report.txt | 55 ++-
tools/perf/Documentation/perf-sched.txt | 18 +-
.../{perf-trace-perl.txt => perf-script-perl.txt} | 28 +-
...erf-trace-python.txt => perf-script-python.txt} | 88 ++--
.../{perf-trace.txt => perf-script.txt} | 61 +-
tools/perf/Documentation/perf-stat.txt | 44 ++-
tools/perf/Documentation/perf-test.txt | 2 +-
tools/perf/Documentation/perf-timechart.txt | 2 +
tools/perf/Documentation/perf-top.txt | 28 +-
tools/perf/MANIFEST | 1 +
tools/perf/Makefile | 23 +-
tools/perf/bench/mem-memcpy-arch.h | 12 +
tools/perf/bench/mem-memcpy-x86-64-asm-def.h | 4 +
tools/perf/bench/mem-memcpy-x86-64-asm.S | 2 +
tools/perf/bench/mem-memcpy.c | 219 +++++--
tools/perf/builtin-annotate.c | 10 +-
tools/perf/builtin-buildid-list.c | 3 +-
tools/perf/builtin-diff.c | 21 +-
tools/perf/builtin-inject.c | 41 +-
tools/perf/builtin-kmem.c | 27 +-
tools/perf/builtin-lock.c | 23 +-
tools/perf/builtin-record.c | 210 ++++---
tools/perf/builtin-report.c | 23 +-
tools/perf/builtin-sched.c | 33 +-
tools/perf/{builtin-trace.c => builtin-script.c} | 135 ++---
tools/perf/builtin-stat.c | 531 ++++++++++------
tools/perf/builtin-test.c | 110 ++++-
tools/perf/builtin-timechart.c | 132 +++-
tools/perf/builtin-top.c | 237 ++++----
tools/perf/builtin.h | 2 +-
tools/perf/command-list.txt | 2 +-
tools/perf/feature-tests.mak | 4 +-
tools/perf/perf.c | 4 +-
tools/perf/scripts/perl/Perf-Trace-Util/Context.c | 2 +-
tools/perf/scripts/perl/Perf-Trace-Util/Context.xs | 4 +-
tools/perf/scripts/perl/Perf-Trace-Util/README | 4 +-
.../perl/Perf-Trace-Util/lib/Perf/Trace/Context.pm | 2 +-
.../perl/Perf-Trace-Util/lib/Perf/Trace/Core.pm | 4 +-
.../perl/Perf-Trace-Util/lib/Perf/Trace/Util.pm | 4 +-
tools/perf/scripts/perl/bin/failed-syscalls-report | 2 +-
tools/perf/scripts/perl/bin/rw-by-file-report | 5 +-
tools/perf/scripts/perl/bin/rw-by-pid-report | 5 +-
tools/perf/scripts/perl/bin/rwtop-report | 5 +-
tools/perf/scripts/perl/bin/wakeup-latency-report | 5 +-
tools/perf/scripts/perl/bin/workqueue-stats-report | 6 +-
tools/perf/scripts/perl/check-perf-trace.pl | 2 +-
tools/perf/scripts/perl/rw-by-file.pl | 2 +-
tools/perf/scripts/perl/workqueue-stats.pl | 2 +-
.../perf/scripts/python/Perf-Trace-Util/Context.c | 2 +-
.../python/Perf-Trace-Util/lib/Perf/Trace/Core.py | 2 +-
.../Perf-Trace-Util/lib/Perf/Trace/SchedGui.py | 2 +-
.../python/Perf-Trace-Util/lib/Perf/Trace/Util.py | 2 +-
.../python/bin/failed-syscalls-by-pid-report | 2 +-
.../scripts/python/bin/futex-contention-report | 2 +-
tools/perf/scripts/python/bin/netdev-times-report | 2 +-
.../perf/scripts/python/bin/sched-migration-report | 2 +-
tools/perf/scripts/python/bin/sctop-report | 2 +-
.../python/bin/syscall-counts-by-pid-report | 2 +-
.../perf/scripts/python/bin/syscall-counts-report | 2 +-
tools/perf/scripts/python/check-perf-trace.py | 2 +-
.../perf/scripts/python/failed-syscalls-by-pid.py | 2 +-
tools/perf/scripts/python/sched-migration.py | 2 +-
tools/perf/scripts/python/sctop.py | 2 +-
tools/perf/scripts/python/syscall-counts-by-pid.py | 2 +-
tools/perf/scripts/python/syscall-counts.py | 2 +-
tools/perf/util/build-id.c | 7 +-
tools/perf/util/cpumap.c | 123 +++-
tools/perf/util/cpumap.h | 10 +-
tools/perf/util/debug.c | 42 +-
tools/perf/util/debug.h | 2 +
tools/perf/util/event.c | 358 +++++++----
tools/perf/util/event.h | 30 +-
tools/perf/util/evsel.c | 186 ++++++
tools/perf/util/evsel.h | 115 ++++
tools/perf/util/header.c | 58 ++-
tools/perf/util/header.h | 5 +-
tools/perf/util/hist.c | 23 +-
tools/perf/util/hist.h | 2 +
tools/perf/util/include/asm/cpufeature.h | 9 +
tools/perf/util/include/asm/dwarf2.h | 11 +
tools/perf/util/include/linux/bitops.h | 5 +
tools/perf/util/include/linux/linkage.h | 13 +
tools/perf/util/parse-events.c | 111 +++-
tools/perf/util/parse-events.h | 19 +-
tools/perf/util/parse-options.h | 4 +
tools/perf/util/probe-event.c | 234 +++++---
tools/perf/util/probe-finder.c | 42 +-
tools/perf/util/probe-finder.h | 6 +-
.../perf/util/scripting-engines/trace-event-perl.c | 6 +-
.../util/scripting-engines/trace-event-python.c | 4 +-
tools/perf/util/session.c | 579 ++++++++++++------
tools/perf/util/session.h | 26 +-
tools/perf/util/sort.c | 6 +-
tools/perf/util/symbol.c | 139 ++++-
tools/perf/util/symbol.h | 4 +-
tools/perf/util/thread.c | 43 +-
tools/perf/util/thread.h | 15 +-
tools/perf/util/trace-event-info.c | 30 +-
tools/perf/util/trace-event.h | 5 +-
tools/perf/util/ui/util.c | 16 +-
tools/perf/util/util.c | 17 +
tools/perf/util/util.h | 1 +
tools/perf/util/xyarray.c | 20 +
tools/perf/util/xyarray.h | 20 +
207 files changed, 4917 insertions(+), 3447 deletions(-)
create mode 100644 Documentation/trace/events-power.txt
delete mode 100644 arch/x86/kernel/apic/nmi.c
rename tools/perf/Documentation/{perf-trace-perl.txt => perf-script-perl.txt} (90%)
rename tools/perf/Documentation/{perf-trace-python.txt => perf-script-python.txt} (89%)
rename tools/perf/Documentation/{perf-trace.txt => perf-script.txt} (62%)
create mode 100644 tools/perf/bench/mem-memcpy-arch.h
create mode 100644 tools/perf/bench/mem-memcpy-x86-64-asm-def.h
create mode 100644 tools/perf/bench/mem-memcpy-x86-64-asm.S
rename tools/perf/{builtin-trace.c => builtin-script.c} (83%)
create mode 100644 tools/perf/util/evsel.c
create mode 100644 tools/perf/util/evsel.h
create mode 100644 tools/perf/util/include/asm/cpufeature.h
create mode 100644 tools/perf/util/include/asm/dwarf2.h
create mode 100644 tools/perf/util/include/linux/linkage.h
create mode 100644 tools/perf/util/xyarray.c
create mode 100644 tools/perf/util/xyarray.h

[ combo patch omitted for mail size reasons. ]
--
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/