Ich habe folgendes Problem.
Ich muss das Modul btusb neu kompilieren, um Bluetooth mit diesem Patch zu aktivieren
Als ich den Patch schließlich ausführte, wurde das Modul nicht geladen:
$ lsmod | grep bluetooth
bluetooth 557056 10 btrtl,btintel,bnep,btbcm
Ich habe versucht, das Modul manuell zu laden, und habe diesen Fehler ausgegeben:
$ sudo modprobe btusb
modprobe: ERROR: could not insert 'btusb': Exec format error
Das letzte, was ich versucht habe, war, den Vanilla-Code zu kompilieren und zu laden, aber es wurde der gleiche Fehler angezeigt.
Kann ein Fehler im Quellcode von btusb sein?
Wenn die Antwort ja ist, werde ich den Fehler auf dem Launchpad melden, aber ich habe hier zuerst gepostet, um sicherzugehen. Mehr Infos habe ich hier gegeben
Danke für den Fortschritt.
Update:
mehr Infos zum Modul:
$ 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
Akzeptierte Antwort:
Sie müssen zum Treiber/Bluetooth-Verzeichnis Ihres Quellcodes zurückkehren und dann
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
Der Fehler ist aufgetreten, weil der Quellcode mit dem falschen Kernel-Header kompiliert wurde. Die modinfo
Die Ergebnisse bestätigen dies, da die vermagischen Informationen (Kernel 4.10.8) nicht mit den Dateinamen info(4.10.0-20) übereinstimmen