LifeTimeStudent

技術的なことの備忘録として

systemtapを使いたい

カーネルデバッグ

ネットをみているとsystemtapというものを使ってカーネルデバッグができるようだったので、systemtapを使ってみようと思った。 自分の環境はcentos6.7 カーネル2.6系

必要なもの

  • systemtap
  • kernel-debuginfo
  • kernel-devel
  • kernel-debuginfo-common

develは最初っからはいっていた。ほかはyumでいけるのかなーと思ったらsystemtap以外はだめだった。。 やりかたがおかしいのかなぁ。 なんでネットでdebuginfo、debuginfo-commonのrpmをダウンロードしてインストール。 しかし、これでstapコマンドを使ってみるも、debuginfoがないと怒られた。/lib/modules/カーネルバージョン/buildはあるように見えたが、怒られた。 ということでよくわからずkernel-debuginfoコマンドがあるということなので、カーネルバージョンを指定してinstallしたらうまくいった。

やったこと

とりあえず__switch_toを追跡しようと思ったが、なんかそんなものありませんみたいなかんじだった。なぜだ!新しくなったのかなぁ? ということでとりあえずsimiliarででてたswitch_mmを指定。うまく実行できた。

これから

systemtapの他にもっと便利なやつあるのかなー? とりあえずこれを使ってinitプロセスが立ち上がるまでを追跡できたらいいなと思っとります。