Documentation/trace/ftrace.rst | 21 + include/linux/ring_buffer.h | 17 +- kernel/trace/ring_buffer.c | 428 ++++++++++++++++----- kernel/trace/ring_buffer_benchmark.c | 10 +- kernel/trace/trace.c | 155 +++++++- kernel/trace/trace.h | 1 + kernel/trace/trace_events.c | 59 ++- .../test.d/00basic/ringbuffer_subbuf_size.tc | 95 +++++ 8 files changed, 658 insertions(+), 128 deletions(-) create mode 100644 tools/testing/selftests/ftrace/test.d/00basic/ringbuffer_subbuf_size.tc