[PATCH v2 0/6] tracing/eprobes: Fixes for unexpected arguments

Steven Rostedt posted 6 patches 3 years, 7 months ago
kernel/trace/trace_eprobe.c | 91 ++++++++++++++++++++++++++++++++++++++++++---
kernel/trace/trace_events.c |  1 +
kernel/trace/trace_probe.c  | 29 +++++++++------
3 files changed, 104 insertions(+), 17 deletions(-)
[PATCH v2 0/6] tracing/eprobes: Fixes for unexpected arguments
Posted by Steven Rostedt 3 years, 7 months ago
While using eprobes, I decided to entertain the thougth of what would
happen if I tried to get the instruction pointer "%rip", knowing full
well that eprobes do not have access to pt_regs. Well, I found out, and
it led me down a rabbit hole of bugs.

This series fixes those bugs, by not allowing register access for eprobes,
and also filling the holes of @symbol and @immediate argument.

Changes since v1: https://lore.kernel.org/all/20220820014035.531145719@goodmis.org/
  - Fixed parenthesis warning

  - Fixed comment about comm arguments

  - Made kprobes and eprobes process "$COMM" as well as "$comm"

  - Made filters consistent with histograms with "common_cpu"

Steven Rostedt (Google) (6):
      tracing/eprobes: Do not allow eprobes to use $stack, or % for regs
      tracing/eprobes: Do not hardcode $comm as a string
      tracing/eprobes: Fix reading of string fields
      tracing/eprobes: Have event probes be consistent with kprobes and uprobes
      tracing/probes: Have kprobes and uprobes use $COMM too
      tracing: Have filter accept "common_cpu" to be consistent

----
 kernel/trace/trace_eprobe.c | 91 ++++++++++++++++++++++++++++++++++++++++++---
 kernel/trace/trace_events.c |  1 +
 kernel/trace/trace_probe.c  | 29 +++++++++------
 3 files changed, 104 insertions(+), 17 deletions(-)