ハング対策 [ドライバ開発]
Windowsの場合、キーボードクラッシュの方法があるので、それを使う。
ハングしたタイミングでキーボードクラッシュを発生させ、ダンプ解析。
!locks
でロックしているのが誰か一応わかる。
自分の開発しているドライバのスレッドなどが原因だと分かっている場合は開始時にスレッドIDなどを表示するようにしておくと、デバッグが楽かも。
Linuxの場合、最近のカーネルであればsysrq-triggerを使う。
カーネルオプションの変更必須。デフォルトでもONかもしれない。
echo "t" > /proc/sysrq-trigger
ハングしてるときはいろんなものが動かなくなっているので、シリアル接続がベター。SSHだとハングしたときに接続を切られている可能性もある。
パフォーマンスの問題の時どうするかは試行錯誤中
ハングしたタイミングでキーボードクラッシュを発生させ、ダンプ解析。
!locks
でロックしているのが誰か一応わかる。
自分の開発しているドライバのスレッドなどが原因だと分かっている場合は開始時にスレッドIDなどを表示するようにしておくと、デバッグが楽かも。
Linuxの場合、最近のカーネルであればsysrq-triggerを使う。
カーネルオプションの変更必須。デフォルトでもONかもしれない。
echo "t" > /proc/sysrq-trigger
ハングしてるときはいろんなものが動かなくなっているので、シリアル接続がベター。SSHだとハングしたときに接続を切られている可能性もある。
パフォーマンスの問題の時どうするかは試行錯誤中
2011-02-27 19:48
nice!(0)
コメント(0)
トラックバック(0)
コメント 0