tracing/probes: Fix to show a parse error for bad type for $comm
authorMasami Hiramatsu (Google) <mhiramat@kernel.org>
Tue, 23 Jan 2024 15:02:34 +0000 (00:02 +0900)
committerMasami Hiramatsu (Google) <mhiramat@kernel.org>
Thu, 8 Feb 2024 14:26:13 +0000 (23:26 +0900)
commit8c427cc2fa73684ea140999e121b7b6c1c717632
treebac02f6a863b1ff0cde4370edb9c32e39850ecb9
parent54be6c6c5ae8e0d93a6c4641cb7528eb0b6ba478
tracing/probes: Fix to show a parse error for bad type for $comm

Fix to show a parse error for bad type (non-string) for $comm/$COMM and
immediate-string. With this fix, error_log file shows appropriate error
message as below.

 /sys/kernel/tracing # echo 'p vfs_read $comm:u32' >> kprobe_events
sh: write error: Invalid argument
 /sys/kernel/tracing # echo 'p vfs_read \"hoge":u32' >> kprobe_events
sh: write error: Invalid argument
 /sys/kernel/tracing # cat error_log

[   30.144183] trace_kprobe: error: $comm and immediate-string only accepts string type
  Command: p vfs_read $comm:u32
                            ^
[   62.618500] trace_kprobe: error: $comm and immediate-string only accepts string type
  Command: p vfs_read \"hoge":u32
                              ^
Link: https://lore.kernel.org/all/170602215411.215583.2238016352271091852.stgit@devnote2/
Fixes: 3dd1f7f24f8c ("tracing: probeevent: Fix to make the type of $comm string")
Cc: stable@vger.kernel.org
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
kernel/trace/trace_probe.c
kernel/trace/trace_probe.h