Encontrou uma maneira de instalar o driver. Primeiro de tudo, o LSI (Broadcom) fornece os arquivos de origem. Eu entrei no diretório do arquivo de origem e enviei os seguintes comandos:
./compile.sh
retorna:
rm: cannot remove 'tags': No such file or directory
./compile.sh: line 50: ctags: command not found
make: Entering directory '/usr/src/linux-headers-4.4.0-66-generic'
LD /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/built-in.o
CC [M] /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/mpt3sas_base.o
CC [M] /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/mpt3sas_config.o
CC [M] /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/mpt3sas_warpdrive.o
CC [M] /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/mpt3sas_scsih.o
CC [M] /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/mpt3sas_transport.o
CC [M] /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/mpt3sas_ctl.o
CC [M] /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/mpt3sas_trigger_diag.o
LD [M] /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/mpt3sas.o
Building modules, stage 2.
MODPOST 1 modules
CC /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/mpt3sas.mod.o
LD [M] /home/pietro/N2215/Linux_Driver_RHEL6-7_SLES11-12_P14/mpt3sas/mpt3sas.ko
make: Leaving directory '/usr/src/linux-headers-4.4.0-66-generic'
./load.sh
retorna:
dev.scsi.logging_level = 0x1C0
insmod: ERROR: could not insert module mpt3sas.ko: File exists
Então, tentei remover o driver mpt3sas
atual via rmmod mpt3sas
, sem sucesso:
rmmod: ERROR: Module mpt3sas is in use
Eu copiei manualmente o módulo do kernel apenas compilado para o diretório correto:
cp /lib/modules/4.4.0-66-generic/kernel/drivers/scsi/mpt3sas/mpt3sas.ko /lib/modules/4.4.0-66-generic/kernel/drivers/scsi/mpt3sas/mpt3sas.ko.bk
cp mpt3sas.ko /lib/modules/4.4.0-66-generic/kernel/drivers/scsi/mpt3sas/
Eu, então, executo update-initramfs -u
, reiniciado e agora modinfo mpt3sas
retorna:
filename: /lib/modules/4.4.0-66-generic/kernel/drivers/scsi/mpt3sas/mpt3sas.ko
alias: mpt2sas
version: 15.00.00.00
license: GPL
description: LSI MPT Fusion SAS 3.0 Device Driver
author: Avago Technologies <[email protected]>
srcversion: B199EC43635A547B22D7056
alias: pci:v00001000d000000C3sv*sd*bc*sc*i*
alias: pci:v00001000d000000C2sv*sd*bc*sc*i*
alias: pci:v00001000d000000C1sv*sd*bc*sc*i*
alias: pci:v00001000d000000C0sv*sd*bc*sc*i*
alias: pci:v00001000d000000C8sv*sd*bc*sc*i*
alias: pci:v00001000d000000C7sv*sd*bc*sc*i*
alias: pci:v00001000d000000C6sv*sd*bc*sc*i*
alias: pci:v00001000d000000C5sv*sd*bc*sc*i*
alias: pci:v00001000d000000C4sv*sd*bc*sc*i*
alias: pci:v00001000d000000C9sv*sd*bc*sc*i*
alias: pci:v00001000d00000095sv*sd*bc*sc*i*
alias: pci:v00001000d00000094sv*sd*bc*sc*i*
alias: pci:v00001000d00000091sv*sd*bc*sc*i*
alias: pci:v00001000d00000090sv*sd*bc*sc*i*
alias: pci:v00001000d00000097sv*sd*bc*sc*i*
alias: pci:v00001000d00000096sv*sd*bc*sc*i*
alias: pci:v00001000d0000007Esv*sd*bc*sc*i*
alias: pci:v00001000d0000006Esv*sd*bc*sc*i*
alias: pci:v00001000d00000087sv*sd*bc*sc*i*
alias: pci:v00001000d00000086sv*sd*bc*sc*i*
alias: pci:v00001000d00000085sv*sd*bc*sc*i*
alias: pci:v00001000d00000084sv*sd*bc*sc*i*
alias: pci:v00001000d00000083sv*sd*bc*sc*i*
alias: pci:v00001000d00000082sv*sd*bc*sc*i*
alias: pci:v00001000d00000081sv*sd*bc*sc*i*
alias: pci:v00001000d00000080sv*sd*bc*sc*i*
alias: pci:v00001000d00000065sv*sd*bc*sc*i*
alias: pci:v00001000d00000064sv*sd*bc*sc*i*
alias: pci:v00001000d00000077sv*sd*bc*sc*i*
alias: pci:v00001000d00000076sv*sd*bc*sc*i*
alias: pci:v00001000d00000074sv*sd*bc*sc*i*
alias: pci:v00001000d00000072sv*sd*bc*sc*i*
alias: pci:v00001000d00000070sv*sd*bc*sc*i*
depends: scsi_transport_sas,raid_class
vermagic: 4.4.0-66-generic SMP mod_unload modversions
parm: logging_level: bits for enabling additional logging info (default=0)
parm: sdev_queue_depth: globally setting SAS device queue depth
parm: max_sectors:max sectors, range 64 to 32767 default=32767 (ushort)
parm: command_retry_count: Device discovery TUR command retry count: (default=144) (int)
parm: missing_delay: device missing delay , io missing delay (array of int)
parm: host_lock_mode:Enable SCSI host lock if set to 1(default=0) (int)
parm: max_lun: max lun, default=16895 (int)
parm: hbas_to_enumerate: 0 - enumerates both SAS 2.0 & SAS 3.0 generation HBAs
1 - enumerates only SAS 2.0 generation HBAs
2 - enumerates only SAS 3.0 generation HBAs (default=-1, Enumerated both SAS 2.0 & SAS 3.0 else SAS 3.0 only) (int)
parm: mpt3sas_multipath: enabling mulipath support for target resets (default=0) (int)
parm: disable_eedp: disable EEDP support: (default=0) (uint)
parm: diag_buffer_enable: post diag buffers (TRACE=1/SNAPSHOT=2/EXTENDED=4/default=0) (int)
parm: disable_discovery: disable discovery (int)
parm: allow_drive_spindown: allow host driver to issue START STOP UNIT(STOP) command to spindown the drive before shut down or driver unload, default=1,
Dont spindown any SATA drives =0 / Spindown SSD but not HDD = 1/ Spindown HDD but not SSD =2/ Spindown all SATA drives =3 (uint)
parm: prot_mask: host protection capabilities mask, def=0x07 (int)
parm: protection_guard_mask: host protection algorithm mask, def=3 (int)
parm: issue_scsi_cmd_to_bringup_drive: allow host driver to issue SCSI commands to bring the drive to READY state, default=1 (int)
parm: sata_smart_polling: poll for smart errors on SATA drives: (default=0) (uint)
parm: max_queue_depth: max controller queue depth (int)
parm: max_sgl_entries: max sg entries (int)
parm: msix_disable: disable msix routed interrupts (default=0) (int)
parm: smp_affinity_enable:SMP affinity feature enable/disbale Default: enable(1) (int)
parm: max_msix_vectors: max msix vectors (int)
parm: mpt3sas_fwfault_debug: enable detection of firmware fault and halt firmware - (default=0)
Além disso, dmesg | grep mpt3sas
retorna:
[ 3.654905] mpt3sas: module verification failed: signature and/or required key missing - tainting kernel
[ 3.707454] mpt3sas version 15.00.00.00 loaded
[ 3.812218] mpt3sas_cm0: 64 BIT PCI BUS DMA ADDRESSING SUPPORTED, total mem (98847588 kB)
[ 4.133670] mpt3sas_cm0: IOC Number : 0
[ 4.134366] mpt3sas0-msix0: PCI-MSI-X enabled: IRQ 81
[ 4.134366] mpt3sas0-msix1: PCI-MSI-X enabled: IRQ 82
[ 4.134366] mpt3sas0-msix2: PCI-MSI-X enabled: IRQ 83
[ 4.134367] mpt3sas0-msix3: PCI-MSI-X enabled: IRQ 84
[ 4.134367] mpt3sas0-msix4: PCI-MSI-X enabled: IRQ 85
[ 4.134367] mpt3sas0-msix5: PCI-MSI-X enabled: IRQ 86
[ 4.134368] mpt3sas0-msix6: PCI-MSI-X enabled: IRQ 87
[ 4.134368] mpt3sas0-msix7: PCI-MSI-X enabled: IRQ 88
[ 4.134368] mpt3sas0-msix8: PCI-MSI-X enabled: IRQ 89
[ 4.134369] mpt3sas0-msix9: PCI-MSI-X enabled: IRQ 90
[ 4.134369] mpt3sas0-msix10: PCI-MSI-X enabled: IRQ 91
[ 4.134369] mpt3sas0-msix11: PCI-MSI-X enabled: IRQ 92
[ 4.134370] mpt3sas0-msix12: PCI-MSI-X enabled: IRQ 93
[ 4.134370] mpt3sas0-msix13: PCI-MSI-X enabled: IRQ 94
[ 4.134370] mpt3sas0-msix14: PCI-MSI-X enabled: IRQ 95
[ 4.134371] mpt3sas0-msix15: PCI-MSI-X enabled: IRQ 96
[ 4.134372] mpt3sas_cm0: iomem(0x00000000a4fb0000), mapped(0xffffc9000cfe0000), size(65536)
[ 4.134372] mpt3sas_cm0: ioport(0x0000000000003f00), size(256)
[ 4.441696] mpt3sas_cm0: IOC Number : 0
[ 4.441698] mpt3sas_cm0: sending message unit reset !!
[ 4.449668] mpt3sas_cm0: message unit reset: SUCCESS
[ 4.622550] mpt3sas_cm0: Allocated physical memory: size(18690 kB)
[ 4.628086] mpt3sas_cm0: Current Controller Queue Depth(10104), Max Controller Queue Depth(10240)
[ 4.633588] mpt3sas_cm0: Scatter Gather Elements per IO(128)
[ 4.870241] mpt3sas_cm0: LSISAS3008: FWVersion(14.00.00.00), ChipRevision(0x02), BiosVersion(16.00.00.00)
[ 4.875699] mpt3sas_cm0: Protocol=(Initiator,Target), Capabilities=(TLR,EEDP,Snapshot Buffer,Diag Trace Buffer,Task Set Full,NCQ)
[ 4.887009] mpt3sas_cm0: : host protection capabilities enabled DIF1 DIF2 DIF3
[ 4.899062] mpt3sas_cm0: sending port enable !!
[ 4.906595] mpt3sas_cm0: host_add: handle(0x0001), sas_addr(0x500605b009cbcea0), phys(8)
[ 4.917659] mpt3sas_cm0: port enable: SUCCESS
Agora, as únicas coisas que me preocupam é mpt3sas: module verification failed: signature and/or required key missing - tainting kernel
, mas imagino que não seja um problema.