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

カーネル4.10.0-20-genericでモジュールBtusbをロードする際のエラー?

次の問題があります。
このパッチでBluetoothを使用できるようにするには、モジュールbtusbを再コンパイルする必要があります
最終的にパッチを実行したときに、モジュールがロードされませんでした:

$ lsmod | grep bluetooth
bluetooth             557056  10 btrtl,btintel,bnep,btbcm

モジュールを手動でロードしようとしましたが、次のエラーが発生しました:

$ sudo modprobe btusb
modprobe: ERROR: could not insert 'btusb': Exec format error

私が最後に試したのは、バニラコードをコンパイルしてロードすることでしたが、同じエラーが表示されました。

btusbのソースコードにバグがある可能性がありますか?
答えが「はい」の場合、ランチパッドでバグを報告しますが、念のためここに最初に投稿しました。ここで詳細を説明しました

進んでくれてありがとう。

更新:
モジュールに関する詳細情報:

$ modinfo btusb | egrep 'filename|vermagic'
filename:       /lib/modules/4.10.0-20-generic/kernel/drivers/bluetooth/btusb.ko
vermagic:       4.10.8 SMP mod_unload

承認された回答:

ソースコードのdrivers/bluetoothディレクトリに戻ってから、

に戻る必要があります。
make -C /lib/modules/$(uname -r)/build M=$(pwd) clean
cp /usr/src/linux-headers-$(uname -r)/.config ./
cp /usr/src/linux-headers-$(uname -r)/Module.symvers Module.symvers
make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
sudo cp btusb.ko /lib/modules/$(uname -r)/kernel/drivers/bluetooth
sudo modprobe -r btusb
sudo modprobe -v btusb

ソースコードが間違ったカーネルヘッダーにコンパイルされたため、エラーが発生しました。 modinfo vermagic info(kernel 4.10.8)がfilename info(4.10.0-20)と一致しないため、結果はこれを確認します


Ubuntu
  1. trace-cmdを使用したカーネルトレース

  2. Linux – Linuxの汚染されたカーネル?

  3. Mkswapでスワップスペースを作成するときにエラーが発生しましたか?

  1. Linux LKM ローダブル カーネル モジュールを作成、コンパイル、ロードする方法

  2. 簡単な例で独自の Linux カーネル モジュールを作成する方法

  3. カーネル モジュール パラメータの変更 (/sys/module を使用)

  1. Module / Load/Conditional.pmが見つかりません[解決策]

  2. JunglediskがLibnotifyエラーで失敗しますか?

  3. Phpmyadminで常に403エラーが発生しますか?