Hi all, These patch series provide logging feature for Intel Processor Trace (Intel PT).
Intel PT is a new feature of Intel CPU "Broadwell", it captures information about program execution flow. Here is a article about Intel PT. https://software.intel.com/en-us/blogs/2013/09/18/processor-tracing Once Intel PT is enabled, the events which change program flow, like branch instructions, exceptions, interruptions, traps and so on are logged in the memory. This is very useful for debugging because we can know the detailed behavior of software. This patch creates log buffer for Intel PT and enable logging at boot time. When kernel panic occurs, we can get this log buffer from crashdump file by kdump, and reconstruct the flow that led to the panic. changelog: v2: - Reimplement using perf_event_create_kernel_counter v1: https://lkml.org/lkml/2015/7/29/6 Takao Indoh (4): perf/trace: Add function to find event type by name perf: Add function to enable perf events in kernel with ring buffer perf/x86/intel/pt: Add Intel PT logger x86: Stop Intel PT and save its registers when panic occurs arch/x86/Kconfig | 16 +++ arch/x86/include/asm/intel_pt_log.h | 13 ++ arch/x86/kernel/cpu/Makefile | 2 + arch/x86/kernel/cpu/intel_pt_log.c | 178 +++++++++++++++++++++++++++++ arch/x86/kernel/cpu/perf_event_intel_pt.c | 6 + arch/x86/kernel/crash.c | 9 ++ include/linux/perf_event.h | 10 ++ include/linux/trace_events.h | 2 + kernel/events/core.c | 70 +++++++++++- kernel/trace/trace_event_perf.c | 22 ++++ 10 files changed, 323 insertions(+), 5 deletions(-) create mode 100644 arch/x86/include/asm/intel_pt_log.h create mode 100644 arch/x86/kernel/cpu/intel_pt_log.c -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/