Commit 5e37460f authored by Ye Bin's avatar Ye Bin Committed by Masami Hiramatsu (Google)

Documentation: tracing: add new type '%pd' and '%pD' for kprobe

Similar to printk() '%pd' is for fetch dentry's name from struct dentry's
pointer, and '%pD' is for fetch file's name from struct file's pointer.

Link: https://lore.kernel.org/all/20240322064308.284457-4-yebin10@huawei.com/Signed-off-by: default avatarYe Bin <yebin10@huawei.com>
Acked-by: default avatarMasami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: default avatarMasami Hiramatsu (Google) <mhiramat@kernel.org>
parent 20fe4d07
...@@ -58,8 +58,9 @@ Synopsis of kprobe_events ...@@ -58,8 +58,9 @@ Synopsis of kprobe_events
NAME=FETCHARG : Set NAME as the argument name of FETCHARG. NAME=FETCHARG : Set NAME as the argument name of FETCHARG.
FETCHARG:TYPE : Set TYPE as the type of FETCHARG. Currently, basic types FETCHARG:TYPE : Set TYPE as the type of FETCHARG. Currently, basic types
(u8/u16/u32/u64/s8/s16/s32/s64), hexadecimal types (u8/u16/u32/u64/s8/s16/s32/s64), hexadecimal types
(x8/x16/x32/x64), "char", "string", "ustring", "symbol", "symstr" (x8/x16/x32/x64), VFS layer common type(%pd/%pD), "char",
and bitfield are supported. "string", "ustring", "symbol", "symstr" and bitfield are
supported.
(\*1) only for the probe on function entry (offs == 0). Note, this argument access (\*1) 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 is best effort, because depending on the argument type, it may be passed on
...@@ -122,6 +123,9 @@ With 'symstr' type, you can filter the event with wildcard pattern of the ...@@ -122,6 +123,9 @@ With 'symstr' type, you can filter the event with wildcard pattern of the
symbols, and you don't need to solve symbol name by yourself. symbols, and you don't need to solve symbol name by yourself.
For $comm, the default type is "string"; any other type is invalid. For $comm, the default type is "string"; any other type is invalid.
VFS layer common type(%pd/%pD) is a special type, which fetches dentry's or
file's name from struct dentry's address or struct file's address.
.. _user_mem_access: .. _user_mem_access:
User Memory Access User Memory Access
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment