linuxのメモ

Linux kernelの実装を解説していきます (対象ver 4.5)

trace

トレース - is_graph()

概要 stract trace構造体のtrace_flagsメンバのフラグを確認する 詳細 CONFIG_FUNCTION_GRAPH_TRACERが無効な場合は常に0を返すが、有効な場合はstruct trace_array構造体のtrace_flagsメンバの値にTRACE_ITER_DISPLAY_GRAPH*1のbitが立っているかを確認する…

トレース - trace_iterator_bits

概要 struct trace構造体のtrace_flagsメンバが利用可能な値のビット番号を定義する 詳細 TRACE_FLAGSによりstruct trace構造体のtrace_flagsメンバで取り得る値のビット番号とその値を示す名前を定義する

トレース - trace_iterator_flags

概要 struct trace構造体のtrace_flagsメンバの値を定義する 詳細 TRACE_FLAGSによりstruct trace構造体のtrace_flagsメンバで取り得る値とその値を示す名前を定義する

トレース - tracer_tracing_on()

概要 traceを有効にする 詳細 trace_array構造体のポインタを引数として受け取り、trace_array構造体内のtrace_buffer構造体のメンバであるbufferに有効なポインタが設定されていた場合はring_buffer_record_on()を実行する。 その後、trace_array構造体のbu…

トレース - tracing_on()

概要 traceを有効にする 詳細 CONFIG_TRACINGが有効な場合にtracer_tracing_on()をglobal_traceのポインタを引数として実行する 無効な場合は何もしない

トレース - tracing_is_enabled()

概要 traceが有効か確認する 詳細 smp_rmb()を実行し、すべてのCPUでメモリを同期しglobal_trace変数のbuffer_disabledメンバが有効な値の場合に0を、それ以外の場合に1を返す global_trace変数のbuffer_disabledメンバはtracing_off()で無効にされる

トレース - disable_trace_on_warning()

概要 warning error時にtraceを無効にする 詳細 __disable_trace_on_warningがtrueのときにtracing_off()を実行しtraceを無効にする

トレース - tracing_off()

概要 traceを無効にする 詳細 CONFIG_TRACINGが有効な場合にtracer_tracing_off()をglobal_traceのポインタを引数として実行する 無効な場合は何もしない

トレース - tracer_tracing_off()

概要 traceを無効にする 詳細 trace_array構造体のポインタを引数として受け取り、trace_array構造体内のtrace_buffer構造体のメンバであるbufferに有効なポインタが設定されていた場合はring_buffer_record_off()を実行する。 その後、trace_array構造体のb…