ft32を使ってperf_event_openをトレースしますが、available_filter_functionには表示されません。実際には、モジュールに読み込まれた関数のみが表示されているようです。ftraceでLinuxカーネル関数を表示するavailable_filter_function
モジュール以外の機能のデフォルトブラックリストはありますか?私は必要な機能を追加する方法?
ft32を使ってperf_event_openをトレースしますが、available_filter_functionには表示されません。実際には、モジュールに読み込まれた関数のみが表示されているようです。ftraceでLinuxカーネル関数を表示するavailable_filter_function
モジュール以外の機能のデフォルトブラックリストはありますか?私は必要な機能を追加する方法?
スティーブンRostedtの記事、2010年1月20日「次にftrace機能トレーサーの秘密」のいくつかの情報があります:https://lwn.net/Articles/370423/
フィルタファイルに追加できる機能の一覧が示されているに
available_filter_functions
ファイル。この機能のリストは、前述のストアされたmcount
の発信者のリストから得られたものです。ファイルにリストされている機能の
セット(*ブート/設定/または/proc/config.gzでそれらをチェックして、質問に結果を追加してください)カーネルのコンパイルオプションによって異なります。
CONFIG_FUNCTION_TRACER
CONFIG_DYNAMIC_FTRACE
CONFIG_FUNCTION_GRAPH_TRACER
シリーズの以前の記事でMCOUNTについての詳細情報があります:https://lwn.net/Articles/365835/次にftraceを使用してカーネルのデバッグ - パート1は、2009年12月には、スティーブンRostedt:次にftraceの最も強力なトレーサーの
一つは、関数トレーサーです。 gccの-pgオプションを使用して、カーネル内のすべての関数に特別な関数 "mcount()"を呼び出させます。CONFIG_DYNAMIC_FTRACEが設定されていると、ブート時にNOPに変換され、システムは100%のパフォーマンスで動作します。コンパイル中にmcount()呼び出しサイトが記録されます。
/sys/kernel/debug/tracing/events/syscalls/sys_enter_perf_event_open /にあるファイルもチェックできますか?
システムコールはない機能としてではなく、イベント(opensourceforu.com/2010/12/kernel-tracing-with-ftrace-part-2/から例)として、次にftraceために用意されています。私にとって
trace-cmd record -e syscalls ls ##Initiate tracing on the syscall 'ls'
##(A file called trace.dat gets created in the current directory.)
trace-cmd report ## displays the report from trace.dat
trace-cmd record -e syscalls perf stat ls -d .
はperf_event_open
を呼び出します。
OSの配布は何ですか? Linuxカーネルの正確な名前(バージョン)は何ですか( 'uname -a'の出力) – osgx