[PATCH v3 0/6] Add dynamic ftrace support for RISC-V platforms

From: Alan Kao
Date: Thu Jan 18 2018 - 10:53:29 EST


This patch set includes the building blocks of dynamic ftrace features
for RISC-V machines.

Changes in v3:
- Replace the nops at the tracer call sites into a "call ftrace_stub"
instruction for better understanding (1/6 and 2/6)

Changes in v2:
- Fix the return value as writing to kernel text goes wrong (2/6)
- Replace manual comparisons by calling memcmp (2/6)
- Simplify the conditional assignment in the Makefile (1/6)

Alan Kao (6):
riscv/ftrace: Add RECORD_MCOUNT support
riscv/ftrace: Add dynamic function tracer support
riscv/ftrace: Add dynamic function graph tracer support
riscv/ftrace: Add ARCH_SUPPORTS_FTRACE_OPS support
riscv/ftrace: Add DYNAMIC_FTRACE_WITH_REGS support
riscv/ftrace: Add HAVE_FUNCTION_GRAPH_RET_ADDR_PTR support

arch/riscv/Kconfig | 3 +
arch/riscv/Makefile | 3 +
arch/riscv/include/asm/ftrace.h | 47 ++++++++
arch/riscv/kernel/Makefile | 5 +-
arch/riscv/kernel/ftrace.c | 142 ++++++++++++++++++++++-
arch/riscv/kernel/mcount-dyn.S | 241 ++++++++++++++++++++++++++++++++++++++++
arch/riscv/kernel/mcount.S | 22 ++--
arch/riscv/kernel/stacktrace.c | 6 +
scripts/recordmcount.pl | 5 +
9 files changed, 461 insertions(+), 13 deletions(-)
create mode 100644 arch/riscv/kernel/mcount-dyn.S

--
2.15.1