2

これらを試しましたが、すべて「空の」出力ファイルが生成されます。

trace-cmd record -p function_graph -g munmap -F ls
trace-cmd record -p function_graph -g sys_enter_munmap -F ls
trace-cmd record -p function_graph -g sys_enter -F ls
4

1 に答える 1

2

まず、関数名を正しく取得する必要があります。たとえば、opensyscall のトレースに使用する関数名はsys_open.

これを「適切な」方法で行うにfunction_graphは、カーネルでサポートする必要があります。x86 アーキテクチャでは、これは CC_OPTIMIZE_FOR_SIZE が無効になっていることに依存しますが、x86_64 ではそうではありません。

私の場合、CC_OPTIMIZE_FOR_SIZE を無効にするためにカスタム カーネルをコンパイルする必要はありませんでした。

trace-cmd record -p function --func-stack

-lいくつかのオプションを追加することで呼び出されるように見えるさまざまな関数が含まれていました。自分の知りたいことを理解するには、これで十分でした。

于 2011-05-22T14:37:37.740 に答える