Skip to content

tracing: Some micro optimizations

Steven Rostedt lkml 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest8 patches 0 repliesNew

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/8tracing: Create a always_inlined __trace_buffer_lock_reserve()kernel/trace/trace.c+48 -390 replies
2/8ring-buffer: Make rb_reserve_next_event() always inlinedkernel/trace/ring_buffer.c+1 -10 replies
3/8ring-buffer: Always inline rb_event_data()kernel/trace/ring_buffer.c+1 -10 replies
4/8tracing: Make tracepoint_printk a static_keyinclude/linux/ftrace.h kernel/sysctl.c kernel/trace/trace.c +1 more+83 -410 replies
5/8tracing: Make __buffer_unlock_commit() always_inlinekernel/trace/trace.c kernel/trace/trace.h kernel/trace/trace_branch.c +2 more+32 -210 replies
6/8ring-buffer: Force inline of hotpath helper functionskernel/trace/ring_buffer.c+8 -80 replies
7/8ring-buffer: Froce rb_update_write_stamp() to be inlinedkernel/trace/ring_buffer.c+2 -20 replies
8/8ring-buffer: Force rb_end_commit() and rb_set_commit_to_write() inlinekernel/trace/ring_buffer.c+2 -20 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [for-next][PATCH 0/8] tracing: Some micro optimizations

Andi Kleen pointed out a trace that showed lots of functions being called in the trace event hot path. These functions would help to be inlined. More needs to be done, but this is just a start.

git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git
for-next

Head SHA1: 38e11df134297ea3860c7aad8263ece27db01308

Steven Rostedt (Red Hat) (8):
tracing: Create a always_inlined __trace_buffer_lock_reserve()
ring-buffer: Make rb_reserve_next_event() always inlined
ring-buffer: Always inline rb_event_data()
tracing: Make tracepoint_printk a static_key
tracing: Make __buffer_unlock_commit() always_inline
ring-buffer: Force inline of hotpath helper functions
ring-buffer: Froce rb_update_write_stamp() to be inlined
ring-buffer: Force rb_end_commit() and rb_set_commit_to_write() inline

----

 include/linux/ftrace.h               |   4 +
 kernel/sysctl.c                      |   2 +-
 kernel/trace/ring_buffer.c           |  28 ++---
 kernel/trace/trace.c                 | 206 ++++++++++++++++++++++++++---------
 kernel/trace/trace.h                 |   4 +-
 kernel/trace/trace_branch.c          |   2 +-
 kernel/trace/trace_events.c          |  40 -------
 kernel/trace/trace_functions_graph.c |   4 +-
 kernel/trace/trace_hwlat.c           |   2 +-
 9 files changed, 177 insertions(+), 115 deletions(-)