FreeBSD 12.1 vede una scheda QLogic FastLinQ QL41112 SFP+ sul PCI ma non aggancia nessun driver
Gestisco un piccolo parco di macchine FreeBSD e sto aggiungendo il 10G a una di loro. La scheda è entrata, la macchina si avvia bene, ma il sistema operativo si rifiuta di tirarne fuori un'interfaccia.
- Server su FreeBSD 12.1-RELEASE-p1, kernel GENERIC stock
- adapter QLogic FastLinQ QL41112 dual-port 10GbE SFP+
- ottiche SFP+ in entrambe le cage, il lato switch è configurato e in attesa
- niente di personalizzato in /boot/loader.conf oltre ai default
La scheda è sul bus, ed è lì che si ferma, identicamente per entrambe le funzioni:
pci7: <network, ethernet> at device 0.0 (no driver attached)
Non viene creata nessuna interfaccia, quindi non c'è niente da configurare e nessun modo di leggere lo stato del transceiver del tutto.
Cosa ho già fatto:
- reinserita la scheda in uno slot diverso, stesso messaggio
- scambiate le ottiche tra le due cage nel caso una fosse morta
- passato in rassegna ifconfig cercando qualsiasi cosa che non sia lo0 o la NIC integrata
Siccome il device PCI è chiaramente enumerato presumo che sia un problema di driver piuttosto che di ottiche, ma non riesco a capire quale driver serva questa scheda su questa release. Di quale modulo ho bisogno, ed è qualcosa che devo compilarmi da solo?
Comments 3
Quella scheda è servita da qlnxe(4), e su quella release non viene caricata automaticamente, ed è esattamente per questo che ottieni la riga PCI e niente dopo. Metti il modulo nel loader e riavvia:
in /boot/loader.conf. Dopo il reboot, controlla in quest'ordine, risparmia un sacco di congetture:
kldstatdimostra che il modulo è davvero caricato e non solo scritto in un file di config,dmesgora dovrebbe portare messaggi di attach invece di no driver attached, epciconf -lconferma che il device è ancora dove l'hai lasciato. Una volta che le interfacce esistono puoi tornare a preoccuparti delle ottiche.Un avvertimento: il driver copre un insieme specifico di modelli FastLinQ, quindi leggi le release notes che arrivano con il pacchetto driver del vendor per la tua scheda esatta invece di dare per scontato. Qualcuno con una scheda della serie QL41000 25GbE ha caricato il driver e non aveva comunque niente, ed è per questo che vale la pena eseguire la sequenza sopra per bene invece che come formalità. Per un QL41112 10G sulla 12.1 è il fix standard.
Prima di qualsiasi altra cosa, definisci cosa vede davvero la macchina. Posta l'output di
e conferma cosa è caricato con
kldstat. Su un kernel GENERIC stock c'è una discreta probabilità che la risposta sia semplicemente che il modulo per quella famiglia non si carica automaticamente, e un'interfaccia mancante è esattamente quello che sembra. Finché un driver non si aggancia, le ottiche sono irrilevanti, quindi smetti di scambiarle.Giusto.
uname -aconferma 12.1-RELEASE-p1.pciconf -lelenca entrambe le funzioni con none come nome device invece che un nome driver, quindi niente le ha reclamate.kldstatmostra il kernel e la solita manciata di moduli, niente che sembri collegato a QLogic. Quindi sembra proprio un semplice caso di driver mancante piuttosto che hardware morto.