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プロセスが立ち上がるまでを追跡できたらいいなと思っとります。