* [GIT PULL] probes: Update for v6.5
2023-06-27 15:58 [GIT PULL] Probes update for v6.5 Masami Hiramatsu
@ 2023-06-27 15:58 ` Masami Hiramatsu
2023-06-29 0:34 ` [GIT PULL] Probes update " Masami Hiramatsu
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Masami Hiramatsu @ 2023-06-27 15:58 UTC (permalink / raw)
To: Linus Torvalds
Cc: Akanksha J N, Masami Hiramatsu, Steven Rostedt, linux-kernel
Hi Linus,
Probes updates for v6.5:
- fprobe: Pass return address to the fprobe entry/exit callbacks so that
the callbacks don't need to analyze pt_regs/stack to find the function
return address.
- kprobe events: cleanup usage of TPARG_FL_FENTRY and TPARG_FL_RETURN
flags so that those are not set at once.
- fprobe events:
. Add a new fprobe events for tracing arbitrary function entry and
exit as a trace event.
. Add a new tracepoint events for tracing raw tracepoint as a trace
event. This allows user to trace non user-exposed tracepoints.
. Move eprobe's event parser code into probe event common file.
. Introduce BTF (BPF type format) support to kernel probe (kprobe,
fprobe and tracepoint probe) events so that user can specify traced
function arguments by name. This also applies the type of argument
when fetching the argument.
. Introduce '$arg*' wildcard support if BTF is available. This expands
the '$arg*' meta argument to all function argument automatically.
. Check the return value types by BTF. If the function returns 'void',
'$retval' is rejected.
. Add some selftest script for fprobe events, tracepoint events and
BTF support.
. Update documentation about the fprobe events.
. Some fixes for above features, document and selftests.
- selftests for ftrace (except for new fprobe events):
. Add a test case for multiple consecutive probes in a function which
checks if ftrace based kprobe, optimized kprobe and normal kprobe
can be defined in the same target function.
. Add a test case for optimized probe, which checks whether kprobe
can be optimized or not.
Please pull the latest probes-v6.5 tree, which can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
probes-v6.5
Tag SHA1: 08bb7e2de7f32619cd100419e719ef96d6cf0aab
Head SHA1: 53431798f4bb60d214ae1ec4a79eefdd414f577b
Akanksha J N (2):
selftests/ftrace: Add new test case which adds multiple consecutive probes in a function
selftests/ftrace: Add new test case which checks for optimized probes
Masami Hiramatsu (Google) (15):
fprobe: Pass return address to the handlers
tracing/probes: Avoid setting TPARG_FL_FENTRY and TPARG_FL_RETURN
tracing/probes: Add fprobe events for tracing function entry and exit.
selftests/ftrace: Add fprobe related testcases
tracing/probes: Add tracepoint support on fprobe_events
tracing/probes: Move event parameter fetching code to common parser
tracing/probes: Support function parameters if BTF is available
tracing/probes: Add $arg* meta argument for all function args
tracing/probes: Add BTF retval type support
selftests/ftrace: Add tracepoint probe test case
selftests/ftrace: Add BTF arguments test cases
Documentation: tracing/probes: Add fprobe event tracing document
tracing/probes: Fix to return NULL and keep using current argc
Documentation: Fix typo of reference file name
tracing/probes: Fix tracepoint event with $arg* to fetch correct argument
----
Documentation/trace/fprobetrace.rst | 188 +++
Documentation/trace/index.rst | 1 +
Documentation/trace/kprobetrace.rst | 2 +
include/linux/fprobe.h | 11 +-
include/linux/rethook.h | 2 +-
include/linux/trace_events.h | 3 +
include/linux/tracepoint-defs.h | 1 +
include/linux/tracepoint.h | 5 +
kernel/kprobes.c | 1 +
kernel/trace/Kconfig | 26 +
kernel/trace/Makefile | 1 +
kernel/trace/bpf_trace.c | 6 +-
kernel/trace/fprobe.c | 17 +-
kernel/trace/rethook.c | 3 +-
kernel/trace/trace.c | 13 +-
kernel/trace/trace.h Linus,
Probes updates for v6.5:
- fprobe: Pass return address to the fprobe entry/exit callbacks so that
the callbacks don't need to analyze pt_regs/stack to find the function
return address.
- kprobe events: cleanup usage of TPARG_FL_FENTRY and TPARG_FL_RETURN
flags so that those are not set at once.
- fprobe events:
. Add a new fprobe events for tracing arbitrary function entry and
exit as a trace event.
. Add a new tracepoint events for tracing raw tracepoint as a trace
event. This allows user to trace non user-exposed tracepoints.
. Move eprobe's event parser code into probe event common file.
. Introduce BTF (BPF type format) support to kernel probe (kprobe,
fprobe and tracepoint probe) events so that user can specify traced
function arguments by name. This also applies the type of argument
when fetching the argument.
. Introduce '$arg*' wildcard support if BTF is available. This expands
the '$arg*' meta argument to all function argument automatically.
. Check the return value types by BTF. If the function returns 'void',
'$retval' is rejected.
. Add some selftest script for fprobe events, tracepoint events and
BTF support.
. Update documentation about the fprobe events.
. Some fixes for above features, document and selftests.
- selftests for ftrace (except for new fprobe events):
. Add a test case for multiple consecutive probes in a function which
checks if ftrace based kprobe, optimized kprobe and normal kprobe
can be defined in the same target function.
. Add a test case for optimized probe, which checks whether kprobe
can be optimized or not.
Please pull the latest probes-v6.5 tree, which can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
probes-v6.5
Tag SHA1: 08bb7e2de7f32619cd100419e719ef96d6cf0aab
Head SHA1: 53431798f4bb60d214ae1ec4a79eefdd414f577b
Akanksha J N (2):
selftests/ftrace: Add new test case which adds multiple consecutive probes in a function
selftests/ftrace: Add new test case which checks for optimized probes
Masami Hiramatsu (Google) (15):
fprobe: Pass return address to the handlers
tracing/probes: Avoid setting TPARG_FL_FENTRY and TPARG_FL_RETURN
tracing/probes: Add fprobe events for tracing function entry and exit.
selftests/ftrace: Add fprobe related testcases
tracing/probes: Add tracepoint support on fprobe_events
tracing/probes: Move event parameter fetching code to common parser
tracing/probes: Support function parameters if BTF is available
tracing/probes: Add $arg* meta argument for all function args
tracing/probes: Add BTF retval type support
selftests/ftrace: Add tracepoint probe test case
selftests/ftrace: Add BTF arguments test cases
Documentation: tracing/probes: Add fprobe event tracing document
tracing/probes: Fix to return NULL and keep using current argc
Documentation: Fix typo of reference file name
tracing/probes: Fix tracepoint event with $arg* to fetch correct argument
----
Documentation/trace/fprobetrace.rst | 188 +++
Documentation/trace/index.rst | 1 +
Documentation/trace/kprobetrace.rst | 2 +
include/linux/fprobe.h | 11 +-
include/linux/rethook.h | 2 +-
include/linux/trace_events.h | 3 +
include/linux/tracepoint-defs.h | 1 +
include/linux/tracepoint.h | 5 +
kernel/kprobes.c | 1 +
kernel/trace/Kconfig | 26 +
kernel/trace/Makefile | 1 +
kernel/trace/bpf_trace.c | 6 +-
kernel/trace/fprobe.c | 17 +-
kernel/trace/rethook.c | 3 +-
kernel/trace/trace.c | 13 +-
kernel/trace/trace.h | 11 +
kernel/trace/trace_eprobe.c | 44 +-
kernel/trace/trace_fprobe.c | 1199 ++++++++++++++++++++
kernel/trace/trace_kprobe.c | 35 +-
kernel/trace/trace_probe.c | 659 +++++++++--
kernel/trace/trace_probe.h | 49 +-
kernel/trace/trace_uprobe.c | 8 +-
lib/test_fprobe.c | 10 +-
samples/fprobe/fprobe_example.c | 6 +-
.../ftrace/test.d/dynevent/add_remove_btfarg.tc | 58 +
.../ftrace/test.d/dynevent/add_remove_fprobe.tc | 26 +
.../ftrace/test.d/dynevent/add_remove_tprobe.tc | 27 +
.../ftrace/test.d/dynevent/fprobe_syntax_errors.tc | 111 ++
.../ftrace/test.d/dynevent/tprobe_syntax_errors.tc | 82 ++
.../ftrace/test.d/kprobe/kprobe_insn_boundary.tc | 19 +
.../ftrace/test.d/kprobe/kprobe_opt_types.tc | 34 +
.../ftrace/test.d/kprobe/kprobe_syntax_errors.tc | 16 +-
32 files changed, 2510 insertions(+), 164 deletions(-)
create mode 100644 Documentation/trace/fprobetrace.rst
create mode 100644 kernel/trace/trace_fprobe.c
create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_btfarg.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_fprobe.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_tprobe.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/fprobe_syntax_errors.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/tprobe_syntax_errors.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_insn_boundary.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_opt_types.tc | 11 +
kernel/trace/trace_eprobe.c | 44 +-
kernel/trace/trace_fprobe.c | 1199 ++++++++++++++++++++
kernel/trace/trace_kprobe.c | 35 +-
kernel/trace/trace_probe.c | 659 +++++++++--
kernel/trace/trace_probe.h | 49 +-
kernel/trace/trace_uprobe.c | 8 +-
lib/test_fprobe.c | 10 +-
samples/fprobe/fprobe_example.c | 6 +-
.../ftrace/test.d/dynevent/add_remove_btfarg.tc | 58 +
.../ftrace/test.d/dynevent/add_remove_fprobe.tc | 26 +
.../ftrace/test.d/dynevent/add_remove_tprobe.tc | 27 +
.../ftrace/test.d/dynevent/fprobe_syntax_errors.tc | 111 ++
.../ftrace/test.d/dynevent/tprobe_syntax_errors.tc | 82 ++
.../ftrace/test.d/kprobe/kprobe_insn_boundary.tc | 19 +
.../ftrace/test.d/kprobe/kprobe_opt_types.tc | 34 +
.../ftrace/test.d/kprobe/kprobe_syntax_errors.tc | 16 +-
32 files changed, 2510 insertions(+), 164 deletions(-)
create mode 100644 Documentation/trace/fprobetrace.rst
create mode 100644 kernel/trace/trace_fprobe.c
create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_btfarg.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_fprobe.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_tprobe.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/fprobe_syntax_errors.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/tprobe_syntax_errors.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_insn_boundary.tc
create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_opt_types.tc
--
Masami Hiramatsu (Google) <mhiramat@kernel.org>
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [GIT PULL] Probes update for v6.5
2023-06-27 15:58 [GIT PULL] Probes update for v6.5 Masami Hiramatsu
2023-06-27 15:58 ` [GIT PULL] probes: Update " Masami Hiramatsu
@ 2023-06-29 0:34 ` Masami Hiramatsu
2023-06-29 1:10 ` [GIT PULL] probes: Update " Masami Hiramatsu
2023-06-30 18:46 ` [GIT PULL] Probes update " pr-tracker-bot
3 siblings, 0 replies; 5+ messages in thread
From: Masami Hiramatsu @ 2023-06-29 0:34 UTC (permalink / raw)
To: Masami Hiramatsu
Cc: Linus Torvalds, Akanksha J N, Steven Rostedt, linux-kernel
Hi Linus,
Oops, I found the subject format was wrong. Let me resend it.
On Wed, 28 Jun 2023 00:58:18 +0900
Masami Hiramatsu (Google) <mhiramat@kernel.org> wrote:
> Hi Linus,
>
> Probes updates for v6.5:
>
> - fprobe: Pass return address to the fprobe entry/exit callbacks so that
> the callbacks don't need to analyze pt_regs/stack to find the function
> return address.
>
> - kprobe events: cleanup usage of TPARG_FL_FENTRY and TPARG_FL_RETURN
> flags so that those are not set at once.
>
> - fprobe events:
> . Add a new fprobe events for tracing arbitrary function entry and
> exit as a trace event.
> . Add a new tracepoint events for tracing raw tracepoint as a trace
> event. This allows user to trace non user-exposed tracepoints.
> . Move eprobe's event parser code into probe event common file.
> . Introduce BTF (BPF type format) support to kernel probe (kprobe,
> fprobe and tracepoint probe) events so that user can specify traced
> function arguments by name. This also applies the type of argument
> when fetching the argument.
> . Introduce '$arg*' wildcard support if BTF is available. This expands
> the '$arg*' meta argument to all function argument automatically.
> . Check the return value types by BTF. If the function returns 'void',
> '$retval' is rejected.
> . Add some selftest script for fprobe events, tracepoint events and
> BTF support.
> . Update documentation about the fprobe events.
> . Some fixes for above features, document and selftests.
>
> - selftests for ftrace (except for new fprobe events):
> . Add a test case for multiple consecutive probes in a function which
> checks if ftrace based kprobe, optimized kprobe and normal kprobe
> can be defined in the same target function.
> . Add a test case for optimized probe, which checks whether kprobe
> can be optimized or not.
>
>
> Please pull the latest probes-v6.5 tree, which can be found at:
>
>
> git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
> probes-v6.5
>
> Tag SHA1: 08bb7e2de7f32619cd100419e719ef96d6cf0aab
> Head SHA1: 53431798f4bb60d214ae1ec4a79eefdd414f577b
>
>
> Akanksha J N (2):
> selftests/ftrace: Add new test case which adds multiple consecutive probes in a function
> selftests/ftrace: Add new test case which checks for optimized probes
>
> Masami Hiramatsu (Google) (15):
> fprobe: Pass return address to the handlers
> tracing/probes: Avoid setting TPARG_FL_FENTRY and TPARG_FL_RETURN
> tracing/probes: Add fprobe events for tracing function entry and exit.
> selftests/ftrace: Add fprobe related testcases
> tracing/probes: Add tracepoint support on fprobe_events
> tracing/probes: Move event parameter fetching code to common parser
> tracing/probes: Support function parameters if BTF is available
> tracing/probes: Add $arg* meta argument for all function args
> tracing/probes: Add BTF retval type support
> selftests/ftrace: Add tracepoint probe test case
> selftests/ftrace: Add BTF arguments test cases
> Documentation: tracing/probes: Add fprobe event tracing document
> tracing/probes: Fix to return NULL and keep using current argc
> Documentation: Fix typo of reference file name
> tracing/probes: Fix tracepoint event with $arg* to fetch correct argument
>
> ----
> Documentation/trace/fprobetrace.rst | 188 +++
> Documentation/trace/index.rst | 1 +
> Documentation/trace/kprobetrace.rst | 2 +
> include/linux/fprobe.h | 11 +-
> include/linux/rethook.h | 2 +-
> include/linux/trace_events.h | 3 +
> include/linux/tracepoint-defs.h | 1 +
> include/linux/tracepoint.h | 5 +
> kernel/kprobes.c | 1 +
> kernel/trace/Kconfig | 26 +
> kernel/trace/Makefile | 1 +
> kernel/trace/bpf_trace.c | 6 +-
> kernel/trace/fprobe.c | 17 +-
> kernel/trace/rethook.c | 3 +-
> kernel/trace/trace.c | 13 +-
> kernel/trace/trace.h Linus,
>
> Probes updates for v6.5:
>
> - fprobe: Pass return address to the fprobe entry/exit callbacks so that
> the callbacks don't need to analyze pt_regs/stack to find the function
> return address.
>
> - kprobe events: cleanup usage of TPARG_FL_FENTRY and TPARG_FL_RETURN
> flags so that those are not set at once.
>
> - fprobe events:
> . Add a new fprobe events for tracing arbitrary function entry and
> exit as a trace event.
> . Add a new tracepoint events for tracing raw tracepoint as a trace
> event. This allows user to trace non user-exposed tracepoints.
> . Move eprobe's event parser code into probe event common file.
> . Introduce BTF (BPF type format) support to kernel probe (kprobe,
> fprobe and tracepoint probe) events so that user can specify traced
> function arguments by name. This also applies the type of argument
> when fetching the argument.
> . Introduce '$arg*' wildcard support if BTF is available. This expands
> the '$arg*' meta argument to all function argument automatically.
> . Check the return value types by BTF. If the function returns 'void',
> '$retval' is rejected.
> . Add some selftest script for fprobe events, tracepoint events and
> BTF support.
> . Update documentation about the fprobe events.
> . Some fixes for above features, document and selftests.
>
> - selftests for ftrace (except for new fprobe events):
> . Add a test case for multiple consecutive probes in a function which
> checks if ftrace based kprobe, optimized kprobe and normal kprobe
> can be defined in the same target function.
> . Add a test case for optimized probe, which checks whether kprobe
> can be optimized or not.
>
>
> Please pull the latest probes-v6.5 tree, which can be found at:
>
>
> git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
> probes-v6.5
>
> Tag SHA1: 08bb7e2de7f32619cd100419e719ef96d6cf0aab
> Head SHA1: 53431798f4bb60d214ae1ec4a79eefdd414f577b
>
>
> Akanksha J N (2):
> selftests/ftrace: Add new test case which adds multiple consecutive probes in a function
> selftests/ftrace: Add new test case which checks for optimized probes
>
> Masami Hiramatsu (Google) (15):
> fprobe: Pass return address to the handlers
> tracing/probes: Avoid setting TPARG_FL_FENTRY and TPARG_FL_RETURN
> tracing/probes: Add fprobe events for tracing function entry and exit.
> selftests/ftrace: Add fprobe related testcases
> tracing/probes: Add tracepoint support on fprobe_events
> tracing/probes: Move event parameter fetching code to common parser
> tracing/probes: Support function parameters if BTF is available
> tracing/probes: Add $arg* meta argument for all function args
> tracing/probes: Add BTF retval type support
> selftests/ftrace: Add tracepoint probe test case
> selftests/ftrace: Add BTF arguments test cases
> Documentation: tracing/probes: Add fprobe event tracing document
> tracing/probes: Fix to return NULL and keep using current argc
> Documentation: Fix typo of reference file name
> tracing/probes: Fix tracepoint event with $arg* to fetch correct argument
>
> ----
> Documentation/trace/fprobetrace.rst | 188 +++
> Documentation/trace/index.rst | 1 +
> Documentation/trace/kprobetrace.rst | 2 +
> include/linux/fprobe.h | 11 +-
> include/linux/rethook.h | 2 +-
> include/linux/trace_events.h | 3 +
> include/linux/tracepoint-defs.h | 1 +
> include/linux/tracepoint.h | 5 +
> kernel/kprobes.c | 1 +
> kernel/trace/Kconfig | 26 +
> kernel/trace/Makefile | 1 +
> kernel/trace/bpf_trace.c | 6 +-
> kernel/trace/fprobe.c | 17 +-
> kernel/trace/rethook.c | 3 +-
> kernel/trace/trace.c | 13 +-
> kernel/trace/trace.h | 11 +
> kernel/trace/trace_eprobe.c | 44 +-
> kernel/trace/trace_fprobe.c | 1199 ++++++++++++++++++++
> kernel/trace/trace_kprobe.c | 35 +-
> kernel/trace/trace_probe.c | 659 +++++++++--
> kernel/trace/trace_probe.h | 49 +-
> kernel/trace/trace_uprobe.c | 8 +-
> lib/test_fprobe.c | 10 +-
> samples/fprobe/fprobe_example.c | 6 +-
> .../ftrace/test.d/dynevent/add_remove_btfarg.tc | 58 +
> .../ftrace/test.d/dynevent/add_remove_fprobe.tc | 26 +
> .../ftrace/test.d/dynevent/add_remove_tprobe.tc | 27 +
> .../ftrace/test.d/dynevent/fprobe_syntax_errors.tc | 111 ++
> .../ftrace/test.d/dynevent/tprobe_syntax_errors.tc | 82 ++
> .../ftrace/test.d/kprobe/kprobe_insn_boundary.tc | 19 +
> .../ftrace/test.d/kprobe/kprobe_opt_types.tc | 34 +
> .../ftrace/test.d/kprobe/kprobe_syntax_errors.tc | 16 +-
> 32 files changed, 2510 insertions(+), 164 deletions(-)
> create mode 100644 Documentation/trace/fprobetrace.rst
> create mode 100644 kernel/trace/trace_fprobe.c
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_btfarg.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_fprobe.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_tprobe.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/fprobe_syntax_errors.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/tprobe_syntax_errors.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_insn_boundary.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_opt_types.tc | 11 +
> kernel/trace/trace_eprobe.c | 44 +-
> kernel/trace/trace_fprobe.c | 1199 ++++++++++++++++++++
> kernel/trace/trace_kprobe.c | 35 +-
> kernel/trace/trace_probe.c | 659 +++++++++--
> kernel/trace/trace_probe.h | 49 +-
> kernel/trace/trace_uprobe.c | 8 +-
> lib/test_fprobe.c | 10 +-
> samples/fprobe/fprobe_example.c | 6 +-
> .../ftrace/test.d/dynevent/add_remove_btfarg.tc | 58 +
> .../ftrace/test.d/dynevent/add_remove_fprobe.tc | 26 +
> .../ftrace/test.d/dynevent/add_remove_tprobe.tc | 27 +
> .../ftrace/test.d/dynevent/fprobe_syntax_errors.tc | 111 ++
> .../ftrace/test.d/dynevent/tprobe_syntax_errors.tc | 82 ++
> .../ftrace/test.d/kprobe/kprobe_insn_boundary.tc | 19 +
> .../ftrace/test.d/kprobe/kprobe_opt_types.tc | 34 +
> .../ftrace/test.d/kprobe/kprobe_syntax_errors.tc | 16 +-
> 32 files changed, 2510 insertions(+), 164 deletions(-)
> create mode 100644 Documentation/trace/fprobetrace.rst
> create mode 100644 kernel/trace/trace_fprobe.c
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_btfarg.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_fprobe.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_tprobe.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/fprobe_syntax_errors.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/tprobe_syntax_errors.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_insn_boundary.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_opt_types.tc
>
> --
> Masami Hiramatsu (Google) <mhiramat@kernel.org>
--
Masami Hiramatsu (Google) <mhiramat@kernel.org>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [GIT PULL] probes: Update for v6.5
2023-06-27 15:58 [GIT PULL] Probes update for v6.5 Masami Hiramatsu
2023-06-27 15:58 ` [GIT PULL] probes: Update " Masami Hiramatsu
2023-06-29 0:34 ` [GIT PULL] Probes update " Masami Hiramatsu
@ 2023-06-29 1:10 ` Masami Hiramatsu
2023-06-30 18:46 ` [GIT PULL] Probes update " pr-tracker-bot
3 siblings, 0 replies; 5+ messages in thread
From: Masami Hiramatsu @ 2023-06-29 1:10 UTC (permalink / raw)
To: Masami Hiramatsu
Cc: Linus Torvalds, Akanksha J N, Steven Rostedt, linux-kernel
Oops, I didn't know I could resend the mail from past. Please ignore this for the record. (and it seems 2 different messge-id, which is confusing)
I will rewrite it from new.
On Wed, 28 Jun 2023 00:58:18 +0900
Masami Hiramatsu (Google) <mhiramat@kernel.org> wrote:
> Hi Linus,
>
> Probes updates for v6.5:
>
> - fprobe: Pass return address to the fprobe entry/exit callbacks so that
> the callbacks don't need to analyze pt_regs/stack to find the function
> return address.
>
> - kprobe events: cleanup usage of TPARG_FL_FENTRY and TPARG_FL_RETURN
> flags so that those are not set at once.
>
> - fprobe events:
> . Add a new fprobe events for tracing arbitrary function entry and
> exit as a trace event.
> . Add a new tracepoint events for tracing raw tracepoint as a trace
> event. This allows user to trace non user-exposed tracepoints.
> . Move eprobe's event parser code into probe event common file.
> . Introduce BTF (BPF type format) support to kernel probe (kprobe,
> fprobe and tracepoint probe) events so that user can specify traced
> function arguments by name. This also applies the type of argument
> when fetching the argument.
> . Introduce '$arg*' wildcard support if BTF is available. This expands
> the '$arg*' meta argument to all function argument automatically.
> . Check the return value types by BTF. If the function returns 'void',
> '$retval' is rejected.
> . Add some selftest script for fprobe events, tracepoint events and
> BTF support.
> . Update documentation about the fprobe events.
> . Some fixes for above features, document and selftests.
>
> - selftests for ftrace (except for new fprobe events):
> . Add a test case for multiple consecutive probes in a function which
> checks if ftrace based kprobe, optimized kprobe and normal kprobe
> can be defined in the same target function.
> . Add a test case for optimized probe, which checks whether kprobe
> can be optimized or not.
>
>
> Please pull the latest probes-v6.5 tree, which can be found at:
>
>
> git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
> probes-v6.5
>
> Tag SHA1: 08bb7e2de7f32619cd100419e719ef96d6cf0aab
> Head SHA1: 53431798f4bb60d214ae1ec4a79eefdd414f577b
>
>
> Akanksha J N (2):
> selftests/ftrace: Add new test case which adds multiple consecutive probes in a function
> selftests/ftrace: Add new test case which checks for optimized probes
>
> Masami Hiramatsu (Google) (15):
> fprobe: Pass return address to the handlers
> tracing/probes: Avoid setting TPARG_FL_FENTRY and TPARG_FL_RETURN
> tracing/probes: Add fprobe events for tracing function entry and exit.
> selftests/ftrace: Add fprobe related testcases
> tracing/probes: Add tracepoint support on fprobe_events
> tracing/probes: Move event parameter fetching code to common parser
> tracing/probes: Support function parameters if BTF is available
> tracing/probes: Add $arg* meta argument for all function args
> tracing/probes: Add BTF retval type support
> selftests/ftrace: Add tracepoint probe test case
> selftests/ftrace: Add BTF arguments test cases
> Documentation: tracing/probes: Add fprobe event tracing document
> tracing/probes: Fix to return NULL and keep using current argc
> Documentation: Fix typo of reference file name
> tracing/probes: Fix tracepoint event with $arg* to fetch correct argument
>
> ----
> Documentation/trace/fprobetrace.rst | 188 +++
> Documentation/trace/index.rst | 1 +
> Documentation/trace/kprobetrace.rst | 2 +
> include/linux/fprobe.h | 11 +-
> include/linux/rethook.h | 2 +-
> include/linux/trace_events.h | 3 +
> include/linux/tracepoint-defs.h | 1 +
> include/linux/tracepoint.h | 5 +
> kernel/kprobes.c | 1 +
> kernel/trace/Kconfig | 26 +
> kernel/trace/Makefile | 1 +
> kernel/trace/bpf_trace.c | 6 +-
> kernel/trace/fprobe.c | 17 +-
> kernel/trace/rethook.c | 3 +-
> kernel/trace/trace.c | 13 +-
> kernel/trace/trace.h Linus,
>
> Probes updates for v6.5:
>
> - fprobe: Pass return address to the fprobe entry/exit callbacks so that
> the callbacks don't need to analyze pt_regs/stack to find the function
> return address.
>
> - kprobe events: cleanup usage of TPARG_FL_FENTRY and TPARG_FL_RETURN
> flags so that those are not set at once.
>
> - fprobe events:
> . Add a new fprobe events for tracing arbitrary function entry and
> exit as a trace event.
> . Add a new tracepoint events for tracing raw tracepoint as a trace
> event. This allows user to trace non user-exposed tracepoints.
> . Move eprobe's event parser code into probe event common file.
> . Introduce BTF (BPF type format) support to kernel probe (kprobe,
> fprobe and tracepoint probe) events so that user can specify traced
> function arguments by name. This also applies the type of argument
> when fetching the argument.
> . Introduce '$arg*' wildcard support if BTF is available. This expands
> the '$arg*' meta argument to all function argument automatically.
> . Check the return value types by BTF. If the function returns 'void',
> '$retval' is rejected.
> . Add some selftest script for fprobe events, tracepoint events and
> BTF support.
> . Update documentation about the fprobe events.
> . Some fixes for above features, document and selftests.
>
> - selftests for ftrace (except for new fprobe events):
> . Add a test case for multiple consecutive probes in a function which
> checks if ftrace based kprobe, optimized kprobe and normal kprobe
> can be defined in the same target function.
> . Add a test case for optimized probe, which checks whether kprobe
> can be optimized or not.
>
>
> Please pull the latest probes-v6.5 tree, which can be found at:
>
>
> git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
> probes-v6.5
>
> Tag SHA1: 08bb7e2de7f32619cd100419e719ef96d6cf0aab
> Head SHA1: 53431798f4bb60d214ae1ec4a79eefdd414f577b
>
>
> Akanksha J N (2):
> selftests/ftrace: Add new test case which adds multiple consecutive probes in a function
> selftests/ftrace: Add new test case which checks for optimized probes
>
> Masami Hiramatsu (Google) (15):
> fprobe: Pass return address to the handlers
> tracing/probes: Avoid setting TPARG_FL_FENTRY and TPARG_FL_RETURN
> tracing/probes: Add fprobe events for tracing function entry and exit.
> selftests/ftrace: Add fprobe related testcases
> tracing/probes: Add tracepoint support on fprobe_events
> tracing/probes: Move event parameter fetching code to common parser
> tracing/probes: Support function parameters if BTF is available
> tracing/probes: Add $arg* meta argument for all function args
> tracing/probes: Add BTF retval type support
> selftests/ftrace: Add tracepoint probe test case
> selftests/ftrace: Add BTF arguments test cases
> Documentation: tracing/probes: Add fprobe event tracing document
> tracing/probes: Fix to return NULL and keep using current argc
> Documentation: Fix typo of reference file name
> tracing/probes: Fix tracepoint event with $arg* to fetch correct argument
>
> ----
> Documentation/trace/fprobetrace.rst | 188 +++
> Documentation/trace/index.rst | 1 +
> Documentation/trace/kprobetrace.rst | 2 +
> include/linux/fprobe.h | 11 +-
> include/linux/rethook.h | 2 +-
> include/linux/trace_events.h | 3 +
> include/linux/tracepoint-defs.h | 1 +
> include/linux/tracepoint.h | 5 +
> kernel/kprobes.c | 1 +
> kernel/trace/Kconfig | 26 +
> kernel/trace/Makefile | 1 +
> kernel/trace/bpf_trace.c | 6 +-
> kernel/trace/fprobe.c | 17 +-
> kernel/trace/rethook.c | 3 +-
> kernel/trace/trace.c | 13 +-
> kernel/trace/trace.h | 11 +
> kernel/trace/trace_eprobe.c | 44 +-
> kernel/trace/trace_fprobe.c | 1199 ++++++++++++++++++++
> kernel/trace/trace_kprobe.c | 35 +-
> kernel/trace/trace_probe.c | 659 +++++++++--
> kernel/trace/trace_probe.h | 49 +-
> kernel/trace/trace_uprobe.c | 8 +-
> lib/test_fprobe.c | 10 +-
> samples/fprobe/fprobe_example.c | 6 +-
> .../ftrace/test.d/dynevent/add_remove_btfarg.tc | 58 +
> .../ftrace/test.d/dynevent/add_remove_fprobe.tc | 26 +
> .../ftrace/test.d/dynevent/add_remove_tprobe.tc | 27 +
> .../ftrace/test.d/dynevent/fprobe_syntax_errors.tc | 111 ++
> .../ftrace/test.d/dynevent/tprobe_syntax_errors.tc | 82 ++
> .../ftrace/test.d/kprobe/kprobe_insn_boundary.tc | 19 +
> .../ftrace/test.d/kprobe/kprobe_opt_types.tc | 34 +
> .../ftrace/test.d/kprobe/kprobe_syntax_errors.tc | 16 +-
> 32 files changed, 2510 insertions(+), 164 deletions(-)
> create mode 100644 Documentation/trace/fprobetrace.rst
> create mode 100644 kernel/trace/trace_fprobe.c
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_btfarg.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_fprobe.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_tprobe.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/fprobe_syntax_errors.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/tprobe_syntax_errors.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_insn_boundary.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_opt_types.tc | 11 +
> kernel/trace/trace_eprobe.c | 44 +-
> kernel/trace/trace_fprobe.c | 1199 ++++++++++++++++++++
> kernel/trace/trace_kprobe.c | 35 +-
> kernel/trace/trace_probe.c | 659 +++++++++--
> kernel/trace/trace_probe.h | 49 +-
> kernel/trace/trace_uprobe.c | 8 +-
> lib/test_fprobe.c | 10 +-
> samples/fprobe/fprobe_example.c | 6 +-
> .../ftrace/test.d/dynevent/add_remove_btfarg.tc | 58 +
> .../ftrace/test.d/dynevent/add_remove_fprobe.tc | 26 +
> .../ftrace/test.d/dynevent/add_remove_tprobe.tc | 27 +
> .../ftrace/test.d/dynevent/fprobe_syntax_errors.tc | 111 ++
> .../ftrace/test.d/dynevent/tprobe_syntax_errors.tc | 82 ++
> .../ftrace/test.d/kprobe/kprobe_insn_boundary.tc | 19 +
> .../ftrace/test.d/kprobe/kprobe_opt_types.tc | 34 +
> .../ftrace/test.d/kprobe/kprobe_syntax_errors.tc | 16 +-
> 32 files changed, 2510 insertions(+), 164 deletions(-)
> create mode 100644 Documentation/trace/fprobetrace.rst
> create mode 100644 kernel/trace/trace_fprobe.c
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_btfarg.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_fprobe.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/add_remove_tprobe.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/fprobe_syntax_errors.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/dynevent/tprobe_syntax_errors.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_insn_boundary.tc
> create mode 100644 tools/testing/selftests/ftrace/test.d/kprobe/kprobe_opt_types.tc
>
> --
> Masami Hiramatsu (Google) <mhiramat@kernel.org>
--
Masami Hiramatsu (Google) <mhiramat@kernel.org>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [GIT PULL] Probes update for v6.5
2023-06-27 15:58 [GIT PULL] Probes update for v6.5 Masami Hiramatsu
` (2 preceding siblings ...)
2023-06-29 1:10 ` [GIT PULL] probes: Update " Masami Hiramatsu
@ 2023-06-30 18:46 ` pr-tracker-bot
3 siblings, 0 replies; 5+ messages in thread
From: pr-tracker-bot @ 2023-06-30 18:46 UTC (permalink / raw)
To: Masami Hiramatsu (Google)
Cc: Linus Torvalds, Akanksha J N, Masami Hiramatsu (Google),
Steven Rostedt, linux-kernel
The pull request you sent on Wed, 28 Jun 2023 00:58:18 +0900:
> git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git probes-v6.5
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/d2a6fd45c5c4a5c5fdfe6c57f74f630e61d8d9a0
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 5+ messages in thread