3

I'm using ftrace to get trace for sys_read call in kernel. With function or graph tracers, setting set_ftrace_filter to sys_write fails

# echo sys_read > tracing/set_ftrace_filter                                                                                                                                            
-sh: echo: write error: Invalid argument

Here are my ftrace kconfigs

# zcat /proc/config.gz | grep -i ftrace
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_FTRACE=y
CONFIG_FTRACE_SYSCALLS=y
CONFIG_DYNAMIC_FTRACE=y
CONFIG_FTRACE_MCOUNT_RECORD=y
# CONFIG_FTRACE_STARTUP_TEST is not set        

I do not have sys_read or sys_write in available_filter_functions as well. I'm using 3.14 kernel on an arm platform. Please help.

3uphoric
  • 33
  • 7

1 Answers1

1

If you haven't figured already

# egrep -i "^sys_read$|^sys_write$" tracing/available_filter_functions
SyS_read
SyS_write
VenkatC
  • 602
  • 3
  • 5
  • Yep, figured this out. Also sys_read and sys_write can be seen in trace if we enable event tracepoints for syscall entry. e.g. for sys_read `echo 1 > tracing/events/syscalls/sys_enter_read/enable` – 3uphoric Jul 19 '16 at 04:58