Messages in this thread | | | From | Chunyan Zhang <> | Subject | [RFC PATCH 0/4] Integration of function trace with System Trace IP blocks | Date | Wed, 1 Jun 2016 19:18:55 +0800 |
| |
IP blocks allowing a variety of trace sources to log debugging information to a pre-defined area have been introduced on a couple of architecture [1][2]. These system trace blocks (also known as STM) typically follow the MIPI STPv2 protocol [3] and provide a system wide logging facility to any device, running a kernel or not, with access to the block's log entry port(s). Since each trace message has a timestamp, it is possible to correlate events happening in the entire system rather than being confined to the logging facility of a single entity.
This patchset is an RFC aimed at generating ideas on the best way to use STM IP blocks to collect function tracing information produced by Ftrace. That way logging information generated by the function trace subsystem and gathered in the coresight sink can be used in conjunction with trace data from other board components, also collected in the same trace sink. This example is using ARM coresight STM but the same would apply to any architecture wishing to do the same.
Comments and advice would be greatly appreciated.
Thanks, Chunyan
[1]. https://lwn.net/Articles/674746/ [2]. http://lxr.free-electrons.com/source/drivers/hwtracing/intel_th/ [3]. http://mipi.org/specifications/debug#STP [4]. http://lxr.free-electrons.com/source/include/linux/stm.h
Chunyan Zhang (4): STM Ftrace: Adding generic buffer interface driver trace: Introduce an output interface from ftrace to STM trace: Duplicate the output of the function trace logs to STM stm: Mark the functions of writing buffer with notrace
drivers/hwtracing/coresight/coresight-stm.c | 2 +- drivers/hwtracing/intel_th/sth.c | 11 +++--- drivers/hwtracing/stm/Kconfig | 9 +++++ drivers/hwtracing/stm/Makefile | 2 ++ drivers/hwtracing/stm/core.c | 7 ++-- drivers/hwtracing/stm/dummy_stm.c | 2 +- drivers/hwtracing/stm/stm_ftrace.c | 54 +++++++++++++++++++++++++++++ include/linux/stm.h | 4 +-- kernel/trace/Makefile | 1 + kernel/trace/trace.c | 5 ++- kernel/trace/trace_output_stm.c | 27 +++++++++++++++ kernel/trace/trace_output_stm.h | 14 ++++++++ 12 files changed, 126 insertions(+), 12 deletions(-) create mode 100644 drivers/hwtracing/stm/stm_ftrace.c create mode 100644 kernel/trace/trace_output_stm.c create mode 100644 kernel/trace/trace_output_stm.h
-- 1.9.1
| |