GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Errore per caricare il modulo Btusb con kernel 4.10.0-20-generico?

Ho il seguente problema.
Devo ricompilare il modulo btusb per abilitare il bluetooth con questa patch
Quando finalmente eseguo la patch, il modulo non è stato caricato:

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

Ho provato a caricare il modulo manualmente e mi da questo errore:

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

L'ultima cosa che ho provato è stata compilare e caricare il codice vanilla ma ho visualizzato lo stesso errore.

Può essere un bug nel codice sorgente di btusb?
Se la risposta è sì, segnalerò il bug sul launchpad, ma ho postato qui prima per essere sicuro. Ho dato maggiori informazioni qui

Grazie per l'avanzata.

Aggiornamento:
maggiori informazioni sul modulo:

$ 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

Risposta accettata:

Devi tornare alla directory driver/bluetooth del tuo codice sorgente e poi

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

L'errore si è verificato perché il codice sorgente è stato compilato sull'intestazione del kernel sbagliata. Il modinfo i risultati lo confermano poiché le informazioni vermagic (kernel 4.10.8) non corrispondono alle informazioni sul nome file (4.10.0-20)


Ubuntu
  1. Panico del kernel con l'errore "impossibile aprire il dispositivo root", dove aggiungo l'opzione "root ="?

  2. Come creare, compilare e caricare moduli del kernel caricabili LKM Linux

  3. Come scrivere il tuo modulo del kernel Linux con un semplice esempio

  4. modifiche ai parametri del modulo del kernel (usando /sys/module)

  5. Come costruire un modulo del kernel Linux in modo che sia compatibile con tutte le versioni del kernel?

Come caricare o scaricare un modulo del kernel Linux

Come caricare e scaricare i moduli del kernel in Linux

Errore Virtualbox – Impossibile caricare il modulo ring-0 VBoxEhciR0.r0

Visualizza le informazioni sul modulo del kernel Linux con il comando Modinfo

Compila Nginx con il modulo ngx_pagespeed su Ubuntu 16.04

Impossibile avviare il caricamento dei moduli del kernel Ubuntu 16.04?