デバイスでAndroidカスタムROMを使用しており、カスタムboot.img(カスタムカーネル+コマンドライン+ ramdisk)も使用しています。カーネルパニックの直後にカーネルログを表示できるようにしたいのですが、残念ながらシリアルコンソールを使用できません。
良いニュース:AndroidのLinuxカーネルには、まさにこの目的のために書かれたソース/モジュールがいくつかあるようです。たとえば、カーネルの.configファイルで次の行がアクティブ化されます。
CONFIG_ANDROID_RAM_CONSOLE=y
CONFIG_ANDROID_RAM_CONSOLE_ENABLE_VERBOSE=y
CONFIG_APANIC=y
CONFIG_APANIC_PLABEL="oem_log"
私の問題は次のとおりです。これをテストするためにカーネルパニックを強制した後、つまり、で単純なパニックカーネルモジュールをロードした後、 oem_log(デバイスに存在する)insmod panic.ko
という名前のMTDにログが書き込まれなかったようです。次に、RAMはクリアされているように見えるため、再起動後もログが含まれていません。または、ログも書き込まれていません。
では、パニックの後にカーネルログを取得するにはどうすればよいですか?また、実行中のシステムでAPANICをテストする方法があれば役に立ちます。たぶん、カーネルデバッグシステムを使用することによって?今のところ、私はこれにかなり慣れていません。
助けてくれてありがとう!