diff options
author | Masami Hiramatsu (Google) <mhiramat@kernel.org> | 2023-11-10 11:59:03 +0100 |
---|---|---|
committer | Masami Hiramatsu (Google) <mhiramat@kernel.org> | 2023-11-10 11:59:03 +0100 |
commit | b2a866975f6cd5859c746f1da39c8f5736c8def2 (patch) | |
tree | 7e5874462fded7cd95f8e259cde12e4c68d9167f /Documentation/trace/fprobetrace.rst | |
parent | Merge tag 'net-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netd... (diff) | |
download | linux-b2a866975f6cd5859c746f1da39c8f5736c8def2.tar.xz linux-b2a866975f6cd5859c746f1da39c8f5736c8def2.zip |
Documentation: tracing: Add a note about argument and retval access
Add a note about the argument and return value accecss will be best
effort. Depending on the type, it will be passed via stack or a
pair of the registers, but $argN and $retval only support the
single register access.
Link: https://lore.kernel.org/all/169556269377.146934.14829235476649685954.stgit@devnote2/
Suggested-by: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Diffstat (limited to 'Documentation/trace/fprobetrace.rst')
-rw-r--r-- | Documentation/trace/fprobetrace.rst | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/Documentation/trace/fprobetrace.rst b/Documentation/trace/fprobetrace.rst index 8e9bebcf0a2e..e35e6b18df40 100644 --- a/Documentation/trace/fprobetrace.rst +++ b/Documentation/trace/fprobetrace.rst @@ -59,8 +59,12 @@ Synopsis of fprobe-events and bitfield are supported. (\*1) This is available only when BTF is enabled. - (\*2) only for the probe on function entry (offs == 0). - (\*3) only for return probe. + (\*2) only for the probe on function entry (offs == 0). Note, this argument access + is best effort, because depending on the argument type, it may be passed on + the stack. But this only support the arguments via registers. + (\*3) only for return probe. Note that this is also best effort. Depending on the + return value type, it might be passed via a pair of registers. But this only + accesses one register. (\*4) this is useful for fetching a field of data structures. (\*5) "u" means user-space dereference. |