source.android.comからSamsungカーネルをダウンロードしてビルドしました。次に、最初にCWMリカバリイメージをインストールし、その後、Nexus S(Android 4.1.1)をルート化しました。ここで、単純なLoadable-Kernel-Module(LKM)を挿入したいのですが、insmod hello.ko
ADBシェルにコマンドを書き込んでモジュールを挿入すると、2〜3秒後にデバイスが自動的に再起動します。
以下は私のLKMコードです。
#include <linux/module.h>
#include <linux/kernel.h>
int init_module(void)
{
printk(KERN_INFO "Hello android kernel...\n");
return 0;
}
void cleanup_module(void)
{
printk(KERN_INFO "Goodbye android kernel...\n");
}
何が問題なのかわかりません。エラーメッセージは表示されないか、再起動して再起動後に正常に実行を開始するだけです。
編集
Android 2.2でSamsungカーネルをコンパイルし、このカーネルを使用してLKMをコンパイルしました。これが理由かもしれませんか?