Debug
Linuxカーネルのバージョン4.0から追加されたライブパッチ(Livepatch)機能を今更ながら、試してみました。 (Linux4.0の記事でライブパッチに触れていますが、32bitのマシンしか無く、試せなかったんですね。。) なお、本記事は「CLR/H #clrh101」のLTで発表…
Kprobesは、レジスタ情報ダンプなど任意の処理を、アセンブラの命令単位で実行できる機能です。 利用するにはカーネルモジュールを作成する必要はありますが、 カーネルの再ビルド無しで、カーネル内のすべての命令をデバッグできます。
ftraceの使い方については、以下の記事でも紹介しましたが、 ftraceを試してみました - へにゃぺんて@日々勉強のまとめ 過去には紹介しなかった使い方も分かったので、あらためてまとめます。 過去に紹介したときは、 「関数単位でカーネルの実行状況のトレ…
printk()はデバッグ出力無効化の際には、コメントアウトするなりして再ビルドする必要があります。 何度もビルドを繰り返すのは面倒なので、デバッグ出力の有効/無効を実行時に動的に切り替えられるようにする機能が dyndbg(dynamic debug)です。