http://lwn.net/Articles/327111/

Linus,

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

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

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

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

    The pull request for that was:

        http://marc.info/?l=linux-kernel&m=123828022817508&...

     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.

Highlights:

 - 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 
     more.

   - updated max-stack-footprint tracer

   - updated and performance-fixed sysprof plugin, updated userspace

   - updated mmiotrace plugin

   - enhanced hardware-driven branch execution tracing, 
     hw-branch-tracer

 - 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 
     /debug/tracing/options/

   - 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.


Reply via email to