[i.MX8MQ EVK] Kernel ftrace error

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

[i.MX8MQ EVK] Kernel ftrace error

Jump to solution
2,360 Views
jhpark_vine
Contributor III

Activating kernel function trace does not working.

 

Kernel config - Ftrace setting 


CONFIG_SLUB_CPU_PARTIAL=y
CONFIG_SYSTEM_DATA_VERIFICATION=y
CONFIG_PROFILING=y
+CONFIG_TRACEPOINTS=y # end of General setup
....
# CONFIG_KPROBES is not set
CONFIG_JUMP_LABEL=y
# CONFIG_STATIC_KEYS_SELFTEST is not set
+CONFIG_UPROBES=y
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y

....

# CONFIG_STACKTRACE is not set
+CONFIG_TRACE_IRQFLAGS=y
+CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
# CONFIG_DEBUG_KOBJECT is not set
CONFIG_HAVE_DEBUG_BUGVERBOSE=y
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
# CONFIG_FAULT_INJECTION is not set
# CONFIG_LATENCYTOP is not set
+CONFIG_NOP_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_TRACER_MAX_TRACE=y
+CONFIG_TRACE_CLOCK=y
+CONFIG_RING_BUFFER=y
+CONFIG_EVENT_TRACING=y
+CONFIG_CONTEXT_SWITCH_TRACER=y
+CONFIG_RING_BUFFER_ALLOW_SWAP=y
+CONFIG_PREEMPTIRQ_TRACEPOINTS=y
+CONFIG_TRACING=y
+CONFIG_GENERIC_TRACER=y
CONFIG_TRACING_SUPPORT=y
# CONFIG_FTRACE is not set
+CONFIG_FTRACE=y
+CONFIG_FUNCTION_TRACER=y
+CONFIG_FUNCTION_GRAPH_TRACER=y
# CONFIG_PREEMPTIRQ_EVENTS is not set
+CONFIG_IRQSOFF_TRACER=y
# CONFIG_PREEMPT_TRACER is not set
+CONFIG_SCHED_TRACER=y
# CONFIG_HWLAT_TRACER is not set
# CONFIG_FTRACE_SYSCALLS is not set
+CONFIG_TRACER_SNAPSHOT=y
+CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP=y
+CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_PROFILE_ALL_BRANCHES is not set
# CONFIG_STACK_TRACER is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
+CONFIG_UPROBE_EVENTS=y
+CONFIG_DYNAMIC_EVENTS=y
+CONFIG_PROBE_EVENTS=y
+CONFIG_DYNAMIC_FTRACE=y
+CONFIG_FUNCTION_PROFILER=y
+CONFIG_FTRACE_MCOUNT_RECORD=y
# CONFIG_FTRACE_STARTUP_TEST is not set
# CONFIG_HIST_TRIGGERS is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_RING_BUFFER_BENCHMARK is not set
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_PREEMPTIRQ_DELAY_TEST is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
CONFIG_RUNTIME_TESTING_MENU=y
# CONFIG_LKDTM is not set
# CONFIG_TEST_LIST_SORT is not set
root@imx8mqevk:/sys/kernel/debug/tracing# cat set_ftrace_filter
#### all functions enabled #### 

root@imx8mqevk:/sys/kernel/debug/tracing# echo do_fault:traceoff > set_ftrace_filter
-sh: echo: write error: Invalid argument

To set function trace of secondary_start_kernel  , 
root@imx8mqevk:/sys/kernel/debug/tracing# echo secondary_start_kernel:traceon > set_ftrace_filter
-sh: echo: write error: Invalid argument

kernel ftrace READMEkernel ftrace README

0 Kudos
1 Solution
2,340 Views
jimmychan
NXP TechSupport
NXP TechSupport

According to this:

https://www.kernel.org/doc/html/v4.18/trace/events.html

 

If there is an error in the expression, you’ll get an ‘Invalid argument’ error when setting it.

View solution in original post

3 Replies
2,341 Views
jimmychan
NXP TechSupport
NXP TechSupport

According to this:

https://www.kernel.org/doc/html/v4.18/trace/events.html

 

If there is an error in the expression, you’ll get an ‘Invalid argument’ error when setting it.

2,335 Views
jhpark_vine
Contributor III

 

Thanks.  jimmychan. 

 

I tried your idea. and finally find the way.

secondary_start_kernel  was not in the available_filter_functions  list. 

so , i tried another one. 

root@imx8mqevk:/sys/kernel/debug/tracing# cat available_filter_functions | grep -i secon
freeze_secondary_cpus
irq_forced_secondary_handler
ktime_get_seconds
ktime_get_real_seconds
__ktime_get_real_seconds
second_overflow
acpi_ns_get_secondary_object
_xfer_secondary_pool
xfer_secondary_pool
framegen_secondary_clear_channel_status
framegen_wait_for_secondary_syncup
framegen_secondary_is_syncup
framegen_secondary_requests_to_read_empty_fifo
set_secondary_fwnode
config_sub_second_increment
mci_seconds_show
cfg80211_secondary_chans_ok
root@imx8mqevk:/sys/kernel/debug/tracing# echo freeze_secondary_cpus > set_ftrace_filter 

~~~~~

1,798 Views
billchen
Contributor III

thanks , it is useful 

0 Kudos