仮想Linuxで、OSプロセスをプロファイリングするためのSystemtapツールを動作/セットアップしようとしています。VirtualBox を使用してイメージを実行しています。経由
rpm -q kernel
と
cat /proc/version
取得したバージョンは次のとおりです。
Linux version 2.6.32-5-686 (Debian 2.6.32-48squeeze4)
ツールを正しくダウンロードしてインストールし、簡単なプログラム (.stp) を作成しました。ただし、同じエラーが発生し続けます。これは、多くの場所で情報を検索しても成功しませんでした:
実行後:
sudo stap my_profiler.stp
私は得る:
semantic error: libdwfl failure (all kernel modules found): no error
Pass 3: translation failed. Try again with another '--vp 001' option.
https://sourceware.org/systemtap/SystemTap_Beginners_Guide/errors.htmlによると
セマンティック エラー: libdwfl の失敗 デバッグ情報の処理中に問題が発生しました。ほとんどの場合、このエラーは、プローブされたカーネルとバージョンが正確に一致しない kernel-debuginfo パッケージのインストールが原因で発生します。インストールされた kernel-debuginfo パッケージ自体に、一貫性または正確性の問題がある可能性があります。
「kernel-debuginfo」パッケージに関する関連情報は見つかりませんでした。また、冗長オプションを試してみましたが、メリットはありませんでした。VM の古いスナップショットを試してみました。何か案は?
私が実行した .stp プログラムのコード:
probe timer.profile{
printf("Process: %s\n", execname())
printf("Process ID: %d\n", pid())
}