User: Password:
Subscribe / Log in / New account

tracing bits for v2.6.30

From:  Ingo Molnar <>
To:  Linus Torvalds <>
Subject:  [GIT PULL] tracing bits for v2.6.30
Date:  Fri, 3 Apr 2009 01:33:21 +0200
Message-ID:  <>
Cc:, Andrew Morton <>, Steven Rostedt <>
Archive-link:  Article


Please pull the latest tracing-for-linus git tree from:

   git:// tracing-for-linus

 ( If you pull it then please pull the printk tree first:

     git:// printk-for-linus

    The pull request for that was:

     The tracing tree depends on the new printk facilities factored 
     out into the printk branch - but i did not merge back the 
     latest printk fixes back there to reduce criss-cross merging. )

The tree has the ugly criss-crossy merge structure you complained 
about before - i fixed my topic workload and the branch structure 
will look much nicer in the future.


 - New architectures:

   - IA64 ftrace support

 - New plugins:

   - kmemtrace to trace SLAB allocation/freeing and usage patterns

   - blktrace: new ftrace plugin, also ABI compatible with existing 
     relayfs + ioctl based blktrace user-space.

   - lock acquire/release tracing

   - workqueue tracer

 - Updated plugins:

   - enhanced function graph tracer: IRQ entry/exit augmentation, 
     lock acquire/release augmentation, support for regexp, and 

   - updated max-stack-footprint tracer

   - updated and performance-fixed sysprof plugin, updated userspace

   - updated mmiotrace plugin

   - enhanced hardware-driven branch execution tracing, 

 - Tracing infrastructure updates:

   - add trace_printk() for general debugging, accessible generally
     via kernel.h.

   - regexp filter enhancements: module filters, inversion/negation  
     filter rules.

   - separate files for per cpu buffers in /debug/tracing/per_cpu/, 
     for high-speed streaming of tracing data

   - splice() zero-copy tracing support straight from the 
     ring-buffer to the target pipe

   - optionally record call-chain stack traces with events

   - event tracer with structured-logging format descriptors under 
     /debug/tracing/events/* and fast binary tracing records
     (no vsprintf overhead)

   - user-definable runtime filter expressions

   - all tracepoints in the kernel now show up in 
     /debug/tracing/events/ and can be toggled on/off individually 
     and filter expressions can be set.

   - function symbol driven 'trigger' regexp filters: tracing 
     start/stop events based on hitting a specific function or set 
     of functions. Trigger count-down support.

   - per function tracing attributes and trigger state

   - system-wide syscall (and parameters) tracing

   - IRQ/softirq tracepoints

   - ftrace= boot parameter to start tracing early

   - all trace options in separate symbolic files in 

   - improved statistics (in-kernel histogram) framework

Known risks:

 - The scheduler tracepoints were a bit more problematic than
   usual in this development cycle: deadlocks, crashes.

 - The blktrace plugin finalized a bit slower than expected. Most
   of the bugs were on the new ftrace plugin side.

 - It's a big tree with 500 commits. It's problem-free for me, but 
   these things are never problem-free for everyone.

 - No known regressions.



Ananth N Mavinakayanahalli (1):
      kprobes: Fix locking imbalance in kretprobes

Andrew Morton (2):
      kernel/trace/ring_buffer.c: reduce inlining
      kernel/trace/ring_buffer.c: use DIV_ROUND_UP

Anton Vorontsov (1):
      tracing: Fix TRACING_SUPPORT dependency for PPC32

Arnaldo Carvalho de Melo (20):
      ftrace: add ftrace_vprintk
      blktrace: add ftrace plugin
      tracing/blktrace: fix up checkpatch reported problems in ftrace plugin patch
      blktrace: the ftrace interface needs CONFIG_TRACING
      blktrace: Use tracing_reset_online_cpus
      trace: Use tracing_reset_online_cpus in more places
      trace_sched_wakeup: Remove unused variable
      trace: Change struct trace_event callbacks parameter list
      blkftrace: binary tracing, synthesizing old format
      blktrace: fix coding style in recent patches
      trace: judicious error checking of trace_seq results
      trace: make the trace_event callbacks return enum print_line_t
      trace: assign defaults at register_ftrace_event
      trace_branch: Remove unused function
      trace: Remove unused trace_array_cpu parameter
      ring_buffer: remove unused flags parameter
      tracing: Introduce trace_buffer_{lock_reserve,unlock_commit}
      trace: Call tracing_reset_online_cpus before tracer->init()
      tracing: handle unregistering the current tracer
      ring_buffer: pahole struct ring_buffer

Carsten Emde (1):
      tracing: fix command line to pid reverse map

Christoph Lameter (1):
      SLUB: Introduce and use SLUB_MAX_SIZE and SLUB_PAGE_SHIFT constants

Cyrill Gorcunov (1):
      x86: ftrace - simplify wait_for_nmi

David Rientjes (1):
      lockdep: remove duplicate CONFIG_DEBUG_LOCKDEP definitions

Dmitri Vorobiev (2):
      tracing, Text Edit Lock: Fix one sparse warning in kernel/extable.c
      tracing: fix four sparse warnings

Eduard - Gabriel Munteanu (14):
      SLUB: Replace __builtin_return_address(0) with _RET_IP_.
      kmemtrace: Core implementation.
      kmemtrace: Additional documentation.
      kmemtrace: SLAB hooks.
      kmemtrace: SLOB hooks.
      kmemtrace: SLUB hooks.
      kmemtrace: Fix typos in documentation.
      kmemtrace: Better alternative to "kmemtrace: fix printk format warnings".
      kmemtrace: SLUB hooks for caller-tracking functions.
      kmemtrace: Remove the relay version of kmemtrace
      tracing: splice support for tracing_pipe
      tracing: Move pipe waiting code out of tracing_read_pipe().
      tracing: provide trace_seq_reserve()
      tracing: add missing 'extern' keywords to trace_output.h

Frederic Weisbecker (55):
      tracing/function-graph-tracer: strip ending newlines on comments
      tracing/ftrace: provide the base infrastructure for histogram tracing
      tracing/branch-tracer: adapt to the stat tracing API
      tracing/kmemtrace: normalize the raw tracer event to the unified tracing API
      tracing/ftrace: fix a memory leak in stat tracing
      tracing/ftrace: handle more than one stat file per tracer
      tracing/ftrace: separate events tracing and stats tracing engine
      tracing: add a new workqueue tracer
      tracing/function-graph-tracer: fix a regression while suspend to disk
      tracing/function-graph-tracer: various fixes and features
      trace: better manage the context info for events
      tracing/blktrace: move the tracing file to kernel/trace
      tracing/function-graph-tracer: provide a selftest for the function graph tracer
      tracing/power: move the power trace headers to a dedicated file
      tracing/function-graph-tracer: drop the kernel_text_address check
      tracing/function-graph-tracer: handle the leaf functions from trace_pipe
      tracing/sysprof: add missing tracing_{start,stop}_record_cmdline()
      tracing/core: use appropriate waiting on trace_pipe
      tracing/core: remove unused parameter in tracing_fill_pipe_page()
      tracing/function-graph-tracer: fix traces weirdness while absolute time printing
      tracing/function-graph-tracer: provide documentation for the function graph tracer
      tracing/function-graph-tracer: make set_graph_function file support ftrace regex
      tracing/markers: make markers select tracepoints
      tracing/core: introduce per cpu tracing files
      tracing/core: make the read callbacks reentrants
      tracing/core: make the per cpu trace files in per cpu directories
      tracing/function-graph-tracer: use the more lightweight local clock
      vsprintf: unify the format decoding layer for its 3 users
      tracing/core: drop the old trace_printk() implementation in favour of trace_bprintk()
      vsprintf: fix bug in negative value printing
      tracing/core: bring back raw trace_printk for dynamic formats strings
      tracing/ftrace: syscall tracing infrastructure, basics
      tracing/x86: basic implementation of syscall tracing for x86
      tracing/syscalls: support for syscalls tracing on x86
      tracing/syscalls: core infrastructure for syscalls tracing, enhancements
      tracing/syscalls: fix missing release of tracing
      tracing/syscalls: various cleanups
      tracing/syscalls: protect thread flag toggling from races
      tracing/syscalls: select kallsysms
      tracing/core: fix missing mutex unlock on tracing_set_tracer()
      tracing/ftrace: fix double calls to tracing_start()
      tracing/core: fix early free of cpumasks
      tracing/ftrace: fix the check on nopped sites
      tracing/ftrace: stop {irqs, preempt}soff tracers when tracing is stopped
      tracing/ring-buffer: fix non cpu hotplug case
      tracing/ring-buffer: don't annotate rb_cpu_notify with __cpuinit
      tracing/function-graph-tracer: prevent hangs during self-tests
      tracing: keep the tracing buffer after self-test failure
      tracing/events: make the filter files writable
      tracing/events: don't use wake up for events
      tracing/ftrace: make nop-tracer use polling wait for events on pipe
      tracing/events: don't discard an event after commit
      debugfs: function to know if debugfs is initialized
      tracing/ftrace: check if debugfs is registered before creating files
      tracing/function-graph-tracer: fix functions call traces imbalance

Hannes Eder (3):
      tracing: fix sparse warnings: make symbols static
      tracing: fix sparse warnings: fix (un-)signedness
      tracing: fix sparse warning: attribute function with __acquires/__releases

Ingo Molnar (34):
      tracing/ftrace: make trace_find_cmdline() generally available
      tracing/selftest: remove TRACE_CONT reference
      kmemtrace: move #include lines
      relayfs: replace BUG() with WARN_ON() in relay_late_setup_files()
      tracing, kvm: change MARKERS to select instead of depends on
      tracing/kmemtrace: export kmemtrace_mark_alloc_node() / kmemtrace_mark_free()
      tracing/kmemtrace: fix typo
      kmemtrace: add kmemtrace_init()
      tracing: trace_stat.c cleanup
      printk: introduce printk_once()
      ring_buffer: remove unused flags parameter, fix
      tracing/blktrace: move the tracing file to kernel/trace, fix
      ftrace: fix !CONFIG_FTRACE [un_]register_ftrace_command() prototypes
      ftrace: fix !CONFIG_DYNAMIC_FTRACE ftrace_swapper_pid definition
      Documentation/ftrace.txt: update
      tracing/function-graph-tracer: fix merge
      tracing/hw-branch-tracing: convert bts-tracer mutex to a spinlock
      tracing: remove /debug/tracing/latency_trace
      sched: sched_clock() improvement: use in_nmi()
      tracing: implement trace_clock_*() APIs
      tracing: rename ftrace_printk() => trace_printk()
      tracing: move utility functions from ftrace.h to kernel.h
      tracing: clean up menu
      tracing, power-trace: make it build even if the power-tracer is turned off
      tracing: trace_bprintk() cleanups
      tracing: trace_printk() fix, move format array to data section
      tracing: optimize trace_printk()
      locking: rename trace_softirq_[enter|exit] => lockdep_softirq_[enter|exit]
      Merge branches 'tracing/ftrace' and 'linus' into tracing/core
      tracing/syscalls: support for syscalls tracing on x86, fix
      tracepoints: dont update zero-sized tracepoint sections
      tracing, Text Edit Lock - kprobes architecture independent support, nommu fix
      tracing: add run-time field descriptions for event filtering, kfree fix
      tracing, Text Edit Lock: cleanup

Jason Baron (4):
      tracing: convert c/p state power tracer to use tracepoints
      tracing, genirq: add irq enter and exit trace events
      tracing: tracepoints for softirq entry/exit - add softirq-to-name array
      tracing: tracepoints for softirq entry/exit - tracepoints

Jaswinder Singh Rajput (1):
      tracing: fix oops in tracepoint_update_probe_range()

Jody McIntyre (1):
      tracing: Documentation / sample code fixes for tracepoints

KOSAKI Motohiro (8):
      tracing: current tip/master can't enable ftrace
      tracing: fix deadlock when setting set_ftrace_pid
      ftrace: fix documentation typo s/trace_max_latency/tracing_max_latency/
      ftrace: tracing header should put '#' at the beginning of a line
      tracing: Don't use tracing_record_cmdline() in workqueue tracer
      doc: add trace_buf_size description to kernel-parameters.txt
      tracing: Don't assume possible cpu list have continuous numbers
      tracing: Don't use tracing_record_cmdline() in workqueue tracer fix

Lai Jiangshan (18):
      ring_buffer: reset write when reserve buffer fail
      ftrace: fix trace_output
      trace_workqueue: use percpu data for workqueue stat
      ring_buffer: fix typing mistake
      ring_buffer: fix ring_buffer_read_page()
      vsprintf: add binary printf
      tracing: infrastructure for supporting binary record
      tracing: add trace_bprintk()
      ftrace: use seq_read
      ftrace: remove struct list_head from struct dyn_ftrace
      kallsyms, tracing: output more proper symbol name
      ftrace: protect running nmi (V3)
      ftrace: show virtual PID
      tracing: use union for multi-usages field
      trace_stat: don't call seq_printf() in seq_operation->start()
      trace_stat: keep original order
      trace_workqueues: fix empty line's output
      init,cpuset: fix initialize order

Li Zefan (22):
      tracing/ftrace: add missing unlock in register_stat_tracer()
      blktrace: fix possible memory leak
      blktrace: make blk_tracer_enabled a bool flag
      blktrace: remove blk_probe_mutex
      blktrace: don't increase blk_probes_ref if failed to setup blk trace
      blktrace: report EBUSY correctly
      blktrace: remove sysfs_blk_trace_enable_show/store()
      blktrace: avoid accessing NULL bdev->bd_disk
      blktrace: mark ddir_act[] const
      blktrace: fix wrong calculation of RWBS
      blktrace: fix t_error()
      blktrace: print human-readable act_mask
      blktrace: fix timestamp in binary output
      blktrace: fix a race when creating blk_tree_root in debugfs
      blktrace: fix the original blktrace
      blktrace: fix off-by-one bug
      blktrace: make classic output more classic
      blktrace: fix blk_probes_ref chaos
      blktrace: fix memory leak when freeing struct blk_io_trace
      blktrace: extract duplidate code
      blktrace: print out BLK_TN_MESSAGE properly
      trace: make argument 'mem' of trace_seq_putmem() const

Markus Metzger (8):
      x86, ftrace, hw-branch-tracer: support hotplug cpus
      x86, ftrace, hw-branch-tracer: dump trace on oops
      x86, ftrace, hw-branch-tracer: reset trace buffer on close
      x86, ftrace, hw-branch-tracer: change trace format
      x86, ftrace, hw-branch-tracer: documentation
      x86, ds, bts: cleanup DS configuration
      x86, ftrace: fix section mismatch in hw-branch-tracer
      x86, ptrace: remove CONFIG guards around declarations

Masami Hiramatsu (4):
      tracing, Text Edit Lock - SMP alternatives support
      x86: implement atomic text_poke() via fixmap
      x86: expand irq-off region in text_poke()
      x86: kretprobe-booster interrupt emulation code fix

Mathieu Desnoyers (2):
      tracing, Text Edit Lock - Architecture Independent Code
      tracing, Text Edit Lock - kprobes architecture independent support

Pekka Enberg (3):
      kmemtrace: remove unnecessary casts
      kmemtrace: allow kmemtrace to be enabled after boot
      kmemtrace: remove config option for enabling tracing at boot

Pekka Paalanen (3):
      doc: mmiotrace.txt, buffer size control change
      trace: mmiotrace to the tracer menu in Kconfig
      mmiotrace: count events lost due to not recording

Peter Zijlstra (8):
      lockdep: fix incorrect state name
      lockdep: remove extra "irq" string
      lockdep: require framepointers for x86
      tracing: add lockdep tracepoints for lock acquire/release
      trace_clock: fix preemption bug
      ftrace: provide an id file for each event
      ftrace: ensure every event gets an id
      ftrace: event profile hooks

Rakib Mullick (1):
      tracing: fix section mismatch in trace_hw_branches.c

Randy Dunlap (3):
      sysrq: fix ftrace help msg & doc.
      kmemtrace: fix printk format warnings
      kmemtrace: fix printk formats, fix

Shaohua Li (6):
      ftrace, ia64: make recordmcount distinct module compile
      ftrace, ia64: explictly ignore a file in
      ftrace, ia64: Add macro for ftrace_caller
      ftrace, ia64: Add recordmcount for ia64
      ftrace, ia64: IA64 static ftrace support
      ftrace, ia64: IA64 dynamic ftrace support

Stephen Rothwell (2):
      tracing, powerpc: fix powerpc tree and tracing tree interaction
      tracing, net: fix net tree and tracing tree merge interaction

Steven Rostedt (161):
      ftrace: remove obsolete print continue functionality
      ftrace: set up trace event hash infrastructure
      ftrace: change trace.c to use registered events
      ftrace: convert unsigned index to signed
      trace: clean up funny line breaks in stat_seq_show
      trace: print ftrace_dump at KERN_EMERG log level
      trace: stop all recording to ring buffer on ftrace_dump
      ftrace: add stack trace to function tracer
      ftrace: move function tracer functions out of trace.c
      trace: add gcc printf check to trace_seq_printf
      trace: clean up format errors in calls to trace_seq_printf
      ftrace: combine stack trace in function call
      ftrace: remove static from function tracer functions
      trace: set max latency variable to zero on default
      ftrace: test for running of twice on an object
      trace: do not disable wake up tracer on output of trace
      ring-buffer: do not swap if recording is disabled
      trace: separate out rt tasks from wakeup tracer
      wakeup-tracer: show scheduling data in output
      ring-buffer: reset timestamps when ring buffer is reset
      trace: remove internal irqsoff disabling for trace output
      trace: fix logic to start/stop counting
      trace, lockdep: manual preempt count adding for local_bh_disable
      trace: fix default boot up tracer
      trace: let boot trace be chosen by command line
      trace: code style clean up
      trace: remove deprecated entry->cpu
      ring-buffer: add NMI protection for spinlocks
      ring-buffer: allow tracing_off to be used in core kernel code
      ftrace, x86: rename in_nmi variable
      nmi: add generic nmi tracking state
      ftrace: change function graph tracer to use new in_nmi
      ring-buffer: use generic version of in_nmi
      tracing: clean up splice code
      tracing, x86: fix constraint for parent variable
      preempt-count: force hardirq-count to max of 10
      ring-buffer: rename label out_unlock to out_reset
      sched: do not account for NMIs
      ftrace: state that all functions are enabled in set_ftrace_filter
      ftrace: add do_for_each_ftrace_rec and while_for_each_ftrace_rec
      ftrace: rename ftrace_match to ftrace_match_records
      ftrace: break up ftrace_match_records into smaller components
      ftrace: add module command function filter selection
      ftrace: enable filtering only when a function is filtered on
      ftrace: add command interface for function selection
      ftrace: convert ftrace_lock from a spinlock to mutex
      ftrace: consolidate mutexes
      ftrace: trace different functions with a different tracer
      ring-buffer: add tracing_is_on to test if ring buffer is enabled
      ftrace: add traceon traceoff commands to enable/disable the buffers
      ftrace: show selected functions in set_ftrace_filter
      ftrace: add pretty print to selected fuction traces
      ftrace: add pretty print function for traceon and traceoff hooks
      ftrace: clean up coding style
      ftrace: rename _hook to _probe
      ftrace: show unlimited when traceon or traceoff has no counter
      ftrace: allow archs to preform pre and post process for code modification
      ftrace, x86: make kernel text writable only for conversions
      ftrace: immediately stop code modification if failure is detected
      ftrace: break out modify loop immediately on detection of error
      tracing: add DEFINE_TRACE_FMT to tracepoint.h
      tracing: add event trace infrastructure
      tracing: add schedule events to event trace
      tracing: make event directory structure
      tracing: rename DEFINE_TRACE_FMT to just TRACE_FORMAT
      tracing: wrap arguments with PARAMS
      tracing: add options directory and core option files
      tracing: add tracer dependent options to options directory
      tracing: add protection around open use of current_tracer
      tracing: use pointer error returns for __tracing_open
      tracing: use newline separator for trace options list
      tracing: replace kzalloc with kcalloc
      tracing: move trace point formats to files in include/trace directory
      tracing: add subsystem level to trace events
      tracing: make the set_event and available_events subsystem aware
      tracing: add subsystem irq for irq events
      tracing: add subsystem sched for sched events
      tracing: add interface to write into current tracer buffer
      tracing: add raw trace point recording infrastructure
      tracing: add raw fast tracing interface for trace events
      tracing: create the C style tracing for the sched subsystem
      tracing: create the C style tracing for the irq subsystem
      tracing: add TRACE_FIELD_SPECIAL to record complex entries
      tracing: add protection around modify trace event fields
      tracing: make trace_seq_reset global and rename to trace_seq_init
      tracing: add format file to describe event struct fields
      tracing: add ftrace headers to event format files
      tracing: add trace name and id to event formats
      tracing: add print format to event trace format files
      tracing: fix return value to registering events
      ring-buffer: reset write field for ring_buffer_read_page
      ring-buffer: fix ring_buffer_read_page
      ring-buffer: replace sizeof of event header with offsetof
      ring-buffer: make ring_buffer_read_page read from start on partial page
      tracing: add binary buffer files for use with splice
      tracing: add cpu_file intialization for ftrace_dump
      ring-buffer: fix timestamp in partial ring_buffer_page_read
      tracing: do not return EFAULT if read copied anything
      tracing: fix seq read from trace files
      tracing: add latency output format option
      tracing: remove extra latency_trace method from trace structure
      tracing: consolidate print_lat_fmt and print_trace_fmt
      tracing: have latency tracers set the latency format
      tracing: add tracing_on/tracing_off to kernel.h
      tracing: make all file_operations const
      tracing: move print of event format to separate file
      tracing: add format files for ftrace default entries
      tracing: typecast sizeof and offsetof to unsigned int
      tracing: replace TP<var> with TP_<var>
      tracing: use generic __stringify
      tracing: new format for specialized trace points
      tracing: convert the sched trace points to the TRACE_EVENT macros
      tracing: convert irq trace points to new macros
      tracing: remove obsolete TRACE_EVENT_FORMAT macro
      tracing: fix printk format specifier
      tracing: do not allow modifying the ftrace events via the event files
      tracing: add back the available_events file
      tracing: flip the TP_printk and TP_fast_assign in the TRACE_EVENT macro
      tracing: document TRACE_EVENT macro in tracepoint.h
      tracing: update comments to match event code macros
      tracing: remove funky whitespace in the trace code
      tracing: use raw spinlocks for trace_vprintk
      tracing: keep ring buffer to minimum size till used
      tracing: expand the ring buffers when an event is activated
      tracing: fix trace_wait to know to wait on all cpus or just one
      ring-buffer: only allocate buffers for online cpus
      tracing: fix comments about trace buffer resizing
      tracing: protect ring_buffer_expanded with trace_types_lock
      ring-buffer: use CONFIG_HOTPLUG_CPU not CONFIG_HOTPLUG
      ring-buffer: remove unneeded get_online_cpus
      tracing: show that buffer size is not expanded
      tracing: make bprint event use the proper event id
      tracing: have event_trace_printk use static tracer
      tracing: export trace formats to user space
      tracing: fix stack tracer header
      tracing: explain why stack tracer is empty
      tracing: show event name in trace for TRACE_EVENT created events
      ring-buffer: document reader page design
      tracing: left align location header in stack_trace
      tracing: add comment for use of double __builtin_consant_p
      tracing: move binary buffers into per cpu directory
      softirq: no need to have SOFTIRQ in softirq name
      tracing: protect reader of cmdline output
      tracing: stop comm recording on tracing off
      ring-buffer: add api to allow a tracer to change clock source
      tracing: add global-clock option to provide cross CPU clock to traces
      tracing: make sched_switch stop/start light weight
      tracing: make power tracer start/stop methods lighter weight
      tracing: give easy way to clear trace buffer
      function-graph: consolidate prologues for output
      tracing: make print_(b)printk_msg_only global
      function-graph: calculate function depth within function graph tracer
      tracing: remove recording function depth from trace_printk
      function-graph: show binary events as comments
      tracing: fix memory leak in trace_stat
      function-graph: moved the timestamp from arch to generic code
      function-graph: prevent more than one tracer registering
      function-graph: ignore times across schedule
      function-graph: add option for include sleep times
      function-graph: allow unregistering twice
      ring-buffer: do not remove reader page from list on ring buffer free

Thomas Gleixner (3):
      tracing: stop command line recording when tracing is disabled
      tracing: replace the crude (unsigned) -1 hackery
      tracing: fix trace_find_cmdline()

Tobias Klauser (1):
      tracing: storage class should be before const qualifier

Tom Zanussi (13):
      tracing: fix leak in event_format_read()
      tracing: add run-time field descriptions for event filtering
      tracing: add ring_buffer_event_discard() to ring buffer
      tracing: add per-event filtering
      tracing: add per-subsystem filtering
      tracing/filters: use list_for_each_entry_safe
      tracing/filters: fix bug in copy_pred()
      tracing/filters: clean up filter_add_subsystem_pred()
      tracing/filters: use list_for_each_entry
      tracing/filters: free pred when clearing filters
      tracing/filters: use trace_seq_printf() to print filters
      tracing/filters: disallow integer values for string filters and vice versa
      tracing: filter fix for TRACE_EVENT_FORMAT events

Uwe Kleine-Koenig (2):
      ftrace, trivial: fix typo "resgister" -> "register"
      tracing: make CALLER_ADDRx overwriteable

Vegard Nossum (1):
      kmemtrace: add missing newline

Wenji Huang (7):
      trace: trivial fixes in comment typos.
      tracing: remove unneeded variable
      tracing: provide correct return value after outputting the event
      tracing: fix typos in comments
      tracing: use the more proper parameter
      tracing: fix the return value of trace selftest
      tracing: fix typing mistake in hint message and comments

Witold Baryluk (1):
      tracing: optimization of branch tracer

Zhaolei (3):
      ftrace: avoid double-free of dyn_ftrace
      ftrace: don't try to __ftrace_replace_code on !FTRACE_FL_CONVERTED rec
      ftrace: Using FTRACE_WARN_ON() to check "freed record" in ftrace_release()

 Documentation/ABI/testing/debugfs-kmemtrace |   71 +
 Documentation/ftrace.txt                    | 1134 +++++++----
 Documentation/kernel-parameters.txt         |   12 +
 Documentation/sysrq.txt                     |    2 +
 Documentation/tracepoints.txt               |   21 +-
 Documentation/vm/kmemtrace.txt              |  126 ++
 MAINTAINERS                                 |    6 +
 arch/Kconfig                                |    1 +
 arch/alpha/include/asm/ftrace.h             |    1 +
 arch/alpha/include/asm/hardirq.h            |   13 -
 arch/avr32/include/asm/ftrace.h             |    1 +
 arch/avr32/include/asm/hardirq.h            |   11 -
 arch/blackfin/include/asm/ftrace.h          |    1 +
 arch/cris/include/asm/ftrace.h              |    1 +
 arch/h8300/include/asm/ftrace.h             |    1 +
 arch/ia64/Kconfig                           |    3 +
 arch/ia64/include/asm/ftrace.h              |   28 +
 arch/ia64/include/asm/hardirq.h             |   10 -
 arch/ia64/kernel/Makefile                   |    5 +
 arch/ia64/kernel/entry.S                    |  100 +
 arch/ia64/kernel/ftrace.c                   |  206 ++
 arch/ia64/kernel/ia64_ksyms.c               |    6 +
 arch/m68k/include/asm/ftrace.h              |    1 +
 arch/mips/include/asm/ftrace.h              |    1 +
 arch/parisc/include/asm/ftrace.h            |    1 +
 arch/powerpc/kernel/ftrace.c                |    6 +-
 arch/um/include/asm/ftrace.h                |    1 +
 arch/x86/Kconfig                            |    2 +
 arch/x86/include/asm/cacheflush.h           |    5 +
 arch/x86/include/asm/fixmap.h               |    2 +
 arch/x86/include/asm/ftrace.h               |    7 +
 arch/x86/include/asm/ptrace-abi.h           |    3 -
 arch/x86/include/asm/thread_info.h          |    9 +-
 arch/x86/kernel/Makefile                    |    3 +-
 arch/x86/kernel/alternative.c               |   29 +-
 arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c  |    4 +-
 arch/x86/kernel/dumpstack.c                 |    6 +
 arch/x86/kernel/ftrace.c                    |  192 ++-
 arch/x86/kernel/kprobes.c                   |   17 +-
 arch/x86/kernel/process.c                   |    5 +-
 arch/x86/kernel/ptrace.c                    |    7 +
 arch/x86/kvm/Kconfig                        |    3 +-
 arch/x86/mm/init_32.c                       |   35 +-
 arch/x86/mm/init_64.c                       |   37 +-
 arch/xtensa/include/asm/ftrace.h            |    1 +
 block/Kconfig                               |   16 -
 block/Makefile                              |    1 -
 block/blktrace.c                            |  860 --------
 drivers/char/sysrq.c                        |    2 +-
 drivers/oprofile/cpu_buffer.c               |    5 +-
 fs/debugfs/inode.c                          |   16 +
 fs/partitions/check.c                       |    4 +
 include/asm-frv/ftrace.h                    |    1 +
 include/asm-generic/           |   29 +-
 include/asm-m32r/ftrace.h                   |    1 +
 include/asm-mn10300/ftrace.h                |    1 +
 include/linux/blktrace_api.h                |    5 +
 include/linux/compiler.h                    |    6 +-
 include/linux/debugfs.h                     |    8 +
 include/linux/ftrace.h                      |  244 ++-
 include/linux/ftrace_irq.h                  |    2 +-
 include/linux/hardirq.h                     |   73 +-
 include/linux/interrupt.h                   |    5 +
 include/linux/irqflags.h                    |    8 +-
 include/linux/kernel.h                      |  150 ++
 include/linux/memory.h                      |    6 +
 include/linux/module.h                      |    5 +
 include/linux/ring_buffer.h                 |   38 +-
 include/linux/sched.h                       |    4 +
 include/linux/slab_def.h                    |   68 +-
 include/linux/slob_def.h                    |    9 +-
 include/linux/slub_def.h                    |   53 +-
 include/linux/string.h                      |    7 +
 include/linux/syscalls.h                    |   60 +-
 include/linux/trace_clock.h                 |   19 +
 include/linux/tracepoint.h                  |  116 +-
 include/trace/block.h                       |   70 +-
 include/trace/irq.h                         |    9 +
 include/trace/irq_event_types.h             |   55 +
 include/trace/kmemtrace.h                   |   75 +
 include/trace/lockdep.h                     |    9 +
 include/trace/lockdep_event_types.h         |   44 +
 include/trace/power.h                       |   32 +
 include/trace/sched.h                       |   49 +-
 include/trace/sched_event_types.h           |  337 +++
 include/trace/skb.h                         |    4 +-
 include/trace/trace_event_types.h           |    5 +
 include/trace/trace_events.h                |    5 +
 include/trace/workqueue.h                   |   25 +
 init/Kconfig                                |    2 +-
 init/main.c                                 |    5 +-
 kernel/extable.c                            |   19 +-
 kernel/irq/handle.c                         |    6 +
 kernel/kprobes.c                            |   19 +-
 kernel/lockdep.c                            |   33 +-
 kernel/module.c                             |    2 +-
 kernel/relay.c                              |    4 +-
 kernel/sched.c                              |    8 +-
 kernel/sched_clock.c                        |   12 +
 kernel/softirq.c                            |   32 +-
 kernel/trace/Kconfig                        |  123 +-
 kernel/trace/Makefile                       |   13 +
 kernel/trace/blktrace.c                     | 1549 ++++++++++++++
 kernel/trace/events.c                       |   14 +
 kernel/trace/ftrace.c                       | 1133 ++++++++---
 kernel/trace/kmemtrace.c                    |  339 +++
 kernel/trace/ring_buffer.c                  |  693 +++++--
 kernel/trace/trace.c                        | 3034 +++++++++++++++------------
 kernel/trace/trace.h                        |  315 +++-
 kernel/trace/trace_boot.c                   |   36 +-
 kernel/trace/trace_branch.c                 |  278 ++--
 kernel/trace/trace_clock.c                  |  109 +
 kernel/trace/trace_event_profile.c          |   31 +
 kernel/trace/trace_event_types.h            |  173 ++
 kernel/trace/trace_events.c                 |  824 ++++++++
 kernel/trace/trace_events_filter.c          |  427 ++++
 kernel/trace/trace_events_stage_1.h         |   39 +
 kernel/trace/trace_events_stage_2.h         |  176 ++
 kernel/trace/trace_events_stage_3.h         |  281 +++
 kernel/trace/trace_export.c                 |  102 +
 kernel/trace/trace_functions.c              |  369 ++++-
 kernel/trace/trace_functions_graph.c        |  570 ++++--
 kernel/trace/trace_hw_branches.c            |  185 ++-
 kernel/trace/trace_irqsoff.c                |   54 +-
 kernel/trace/trace_mmiotrace.c              |   45 +-
 kernel/trace/trace_nop.c                    |    6 +-
 kernel/trace/trace_output.c                 | 1017 +++++++++
 kernel/trace/trace_output.h                 |   71 +
 kernel/trace/trace_power.c                  |  194 +-
 kernel/trace/trace_printk.c                 |  270 +++
 kernel/trace/trace_sched_switch.c           |   24 +-
 kernel/trace/trace_sched_wakeup.c           |   96 +-
 kernel/trace/trace_selftest.c               |  169 ++-
 kernel/trace/trace_stack.c                  |   19 +-
 kernel/trace/trace_stat.c                   |  326 +++
 kernel/trace/trace_stat.h                   |   31 +
 kernel/trace/trace_syscalls.c               |  250 +++
 kernel/trace/trace_sysprof.c                |   23 +-
 kernel/trace/trace_workqueue.c              |  288 +++
 kernel/tracepoint.c                         |    7 +-
 kernel/workqueue.c                          |   16 +-
 lib/Kconfig                                 |    3 +
 lib/locking-selftest.c                      |    4 +-
 lib/vsprintf.c                              | 1005 +++++++--
 mm/slab.c                                   |   71 +-
 mm/slob.c                                   |   35 +-
 mm/slub.c                                   |   83 +-
 samples/tracepoints/tp-samples-trace.h      |    8 +-
 samples/tracepoints/tracepoint-sample.c     |   24 +-
 scripts/                      |   13 +-
 scripts/kallsyms.c                          |   57 +
 scripts/                     |   37 +-
 152 files changed, 15404 insertions(+), 4475 deletions(-)
 create mode 100644 Documentation/ABI/testing/debugfs-kmemtrace
 create mode 100644 Documentation/vm/kmemtrace.txt
 create mode 100644 arch/alpha/include/asm/ftrace.h
 create mode 100644 arch/avr32/include/asm/ftrace.h
 create mode 100644 arch/blackfin/include/asm/ftrace.h
 create mode 100644 arch/cris/include/asm/ftrace.h
 create mode 100644 arch/h8300/include/asm/ftrace.h
 create mode 100644 arch/ia64/include/asm/ftrace.h
 create mode 100644 arch/ia64/kernel/ftrace.c
 create mode 100644 arch/m68k/include/asm/ftrace.h
 create mode 100644 arch/mips/include/asm/ftrace.h
 create mode 100644 arch/parisc/include/asm/ftrace.h
 create mode 100644 arch/um/include/asm/ftrace.h
 create mode 100644 arch/xtensa/include/asm/ftrace.h
 delete mode 100644 block/blktrace.c
 create mode 100644 include/asm-frv/ftrace.h
 create mode 100644 include/asm-m32r/ftrace.h
 create mode 100644 include/asm-mn10300/ftrace.h
 create mode 100644 include/linux/trace_clock.h
 create mode 100644 include/trace/irq.h
 create mode 100644 include/trace/irq_event_types.h
 create mode 100644 include/trace/kmemtrace.h
 create mode 100644 include/trace/lockdep.h
 create mode 100644 include/trace/lockdep_event_types.h
 create mode 100644 include/trace/power.h
 create mode 100644 include/trace/sched_event_types.h
 create mode 100644 include/trace/trace_event_types.h
 create mode 100644 include/trace/trace_events.h
 create mode 100644 include/trace/workqueue.h
 create mode 100644 kernel/trace/blktrace.c
 create mode 100644 kernel/trace/events.c
 create mode 100644 kernel/trace/kmemtrace.c
 create mode 100644 kernel/trace/trace_clock.c
 create mode 100644 kernel/trace/trace_event_profile.c
 create mode 100644 kernel/trace/trace_event_types.h
 create mode 100644 kernel/trace/trace_events.c
 create mode 100644 kernel/trace/trace_events_filter.c
 create mode 100644 kernel/trace/trace_events_stage_1.h
 create mode 100644 kernel/trace/trace_events_stage_2.h
 create mode 100644 kernel/trace/trace_events_stage_3.h
 create mode 100644 kernel/trace/trace_export.c
 create mode 100644 kernel/trace/trace_output.c
 create mode 100644 kernel/trace/trace_output.h
 create mode 100644 kernel/trace/trace_printk.c
 create mode 100644 kernel/trace/trace_stat.c
 create mode 100644 kernel/trace/trace_stat.h
 create mode 100644 kernel/trace/trace_syscalls.c
 create mode 100644 kernel/trace/trace_workqueue.c

[ full diff omitted due to lkml message size limit. ]

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds