GNU/Linux >> Linux の 問題 >  >> Linux

NULL ポインターが表示されるカーネル モジュールをデバッグするにはどうすればよいですか?

まず最初に、モジュールをデバッグしますか? gdb にロードできるかどうかを確認してください。可能性があります 関連する変数 (またはそれに近い) を使用する行をまっすぐに示します。

ああ、この記事が役に立つかもしれません


私はそのパッチの作成者の 1 人です。バグが多くて申し訳ありません :)

一般に、このような null ポインターを見つけるには、null (=0) であるポインターが見つかるまで printks を挿入し、その理由がわかるまでソース コードを読みます。

ただし、この場合、フレームバッファ コンソールを無効にする必要があることを私は知っています。そうしないと、コンソールが表示されている場合にのみトリガーされるこの厄介なバグが発生します。または、キーボードのプラグを抜いたときにトリガーされたバグである可能性があり、モジュールは現在無効になっているバッファーにまだ書き込もうとしています。

任意のカーネルに対してコンパイルしやすくするために、現在クリーンアップを試みている github の新しいコードを確認してください。これにはかなりの数のバグ修正が含まれています。

また、私たちの IRC である freenode の #lg4l にも立ち寄ってください。


Linux
  1. 特定のデバイスのカーネルモジュールを見つける方法は?

  2. Linux –どのモジュールがカーネルを汚染しているかを判断する方法は?

  3. Linux – JavaがインストールされたフォルダでJavaのバージョンを見つける方法は?

  1. 使用されているシリアルポートを見つける方法は?

  2. コンパイルされたカーネルモジュールのバージョンを見つける方法は?

  3. Linux カーネルモジュールのコーディング方法は?

  1. Linux – Gitコミットハッシュが与えられた場合、どのカーネルリリースにそれが含まれているのかを知る方法は?

  2. Linux –カーネルモジュールを適切にリロードする方法は?

  3. Linuxモジュールのパスを見つける方法