Unidades mascaradas HP Smart Array P812 modo HBA

Unidades mascaradas HP Smart Array P812 modo HBA

Eu tenho uma placa HP Smart Array P812 atualizada para o modo HBA. Kernel corrigiu Linux para este módulo, Ubuntu 22. Tudo estava funcionando há uma semana, tive passagem dos drives, até usei para testar o setup e copiei arquivos, etc. Há dois dias, simplesmente não aparecia mais. Eu reiniciei, sem alteração.

Puxado ssaclipara verificar o controlador e as unidades, parece que está tudo bem, mas as unidades ainda não aparecem no lsblk.

$ ssacli ctrl all show detail

Smart Array P812 in Slot 4
   Bus Interface: PCI
   Slot: 4
   Serial Number: PAGXQ0ARHZY04W
   Cache Serial Number: PBCDF0CRH0D5U9
   RAID 6 Status: Enabled
   Controller Status: OK
   Hardware Revision: C
   Firmware Version: 3.66
   Firmware Supports Online Firmware Activation: False
   Cache Board Present: True
   Cache Status: Not Configured
   Total Cache Size: 1.0
   Total Cache Memory Available: 0.9
   Battery Backed Cache Size: 0.9
   Cache Backup Power Source: Capacitors
   Battery/Capacitor Count: 1
   Battery/Capacitor Status: OK
   Number of Ports: 6 (2 Internal / 4 External )
   Driver Name: hpsa
   Driver Version: 3.4.20
   WWN Port: 50014380132301B0
   HBA Mode Enabled: True
   PCI Address (Domain:Bus:Device.Function): 0000:42:00.0
   Port Max Phy Rate Limiting Supported: False
   Sanitize Erase Supported: False
   Primary Boot Volume: None
   Secondary Boot Volume: None
   SPDM Supports Get Slot Certificate Chain: no
   SPDM Supports Get Controller Info       : no
   SPDM Supports Get Slot Info             : no
   SPDM Supports Set Import Certificate    : no
   SPDM Supports Set Invalidate Slot       : no
   Surface Scan Completion Supported: False
   Persistent Event Log Policy Change Supported: False

$ cat /proc/scsi/scsi
Attached devices:
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: HP       Model: P812             Rev: 3.66
  Type:   RAID                             ANSI  SCSI revision: 05
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: SEAGATE  Model: ST3146356SS      Rev: HS0F
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi0 Channel: 00 Id: 01 Lun: 00
  Vendor: WD       Model: WD3001FYYG-01SL3 Rev: VR07
  Type:   Direct-Access                    ANSI  SCSI revision: 06
Host: scsi0 Channel: 00 Id: 02 Lun: 00
  Vendor: WD       Model: WD3001FYYG-01SL3 Rev: VR07
  Type:   Direct-Access                    ANSI  SCSI revision: 06
Host: scsi0 Channel: 00 Id: 03 Lun: 00
  Vendor: WD       Model: WD3001FYYG-01SL3 Rev: VR07
  Type:   Direct-Access                    ANSI  SCSI revision: 06
Host: scsi0 Channel: 00 Id: 04 Lun: 00
  Vendor: SEAGATE  Model: ST3146356SS      Rev: HS0F
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi0 Channel: 00 Id: 05 Lun: 00
  Vendor: WD       Model: WD3001FYYG-01SL3 Rev: VR07
  Type:   Direct-Access                    ANSI  SCSI revision: 06
Host: scsi0 Channel: 00 Id: 06 Lun: 00
  Vendor: WD       Model: WD3001FYYG-01SL3 Rev: VR07
$ ssacli ctrl slot=4 pd all show detail

Smart Array P812 in Slot 4

   HBA Drives

      physicaldrive 4E:1:1
         Port: 4E
         Box: 1
         Bay: 1
         Status: OK
         Drive Type: HBA Mode Drive
         Interface Type: Solid State SATA
         Size: 2 TB
         Drive exposed to OS: False
         Logical/Physical Block Size: 512/512
         Firmware Revision: U1014A0
         Serial Number: AA202300002100001831
         WWID: 50014380042BA501
         Model: ATA     SSD 2TB
         SATA NCQ Capable: True
         SATA NCQ Enabled: True
         SSD Smart Trip Wearout: Not Supported
         PHY Count: 1
         PHY Transfer Rate: 1.5Gbps
         PHY Physical Link Rate: Unknown
         PHY Maximum Link Rate: Unknown
         Sanitize Erase Supported: False
         Shingled Magnetic Recording Support: None

Se eu verificar, dmesgsaberei que eles estão lá, mas estão mascarados. Eu tentei executar novamente, modprobe hbsamas sem alterações, sem mencionar que deveria ser executado na inicialização de qualquer maneira, reiniciei algumas vezes depois de fazer tudo isso funcionar há algumas semanas sem problemas.

$ dmesg | grep masked
[    4.554241] hpsa 0000:42:00.0: scsi 1:0:1:0: masked Direct-Access     ATA      SSD 2TB          PHYS DRV SSDSmartPathCap- En- Exp=0
[    4.568580] hpsa 0000:42:00.0: scsi 1:0:2:0: masked Direct-Access     ATA      SSD 2TB          PHYS DRV SSDSmartPathCap- En- Exp=0
[    4.583223] hpsa 0000:42:00.0: scsi 1:0:3:0: masked Direct-Access     ATA      SSD 2TB          PHYS DRV SSDSmartPathCap- En- Exp=0
[    4.597927] hpsa 0000:42:00.0: scsi 1:0:4:0: masked Direct-Access     ATA      SSD 2TB          PHYS DRV SSDSmartPathCap- En- Exp=0
[    4.612871] hpsa 0000:42:00.0: scsi 1:0:5:0: masked Enclosure         HP       MSA70            enclosure SSDSmartPathCap- En- Exp=0
[    4.628075] hpsa 0000:42:00.0: scsi 1:0:6:0: masked Enclosure         HP       P812 INT EXP     enclosure SSDSmartPathCap- En- Exp=0
[    4.643197] hpsa 0000:42:00.0: scsi 1:0:7:0: masked Enclosure         PMCSIERA  SRC 8x6G        enclosure SSDSmartPathCap- En- Exp=0

ATUALIZAR

Tentei limpar a configuração nas unidades, mas não permitiu. Só consigo criar imagens porque o controlador está no modo HBA, então não pensa em nada para limpar:

$ ssacli ctrl slot=4 physicaldrive 4E:1:5 modify clearconfigdata

Error: This operation is not supported with the current configuration. Use the 
       "show" command on devices to show additional details about the
       configuration.
       Reason: Not supported

Responder1

Acabei mudando as bases de código para a abaixo:

https://github.com/99dimitris/hpsahba

Parece que o código Git original para converter a placa para o modo HBA, o driver do kernel deve ter tido problemas. Mudar para a base de código acima, refazer a marcação do meu controlador como HBA e reinstalar o novo driver DKMS com este pacote funcionou. Após a reinicialização, todas as minhas unidades funcionaram bem.

Parecia ser um problema de driver com a base de código anterior.

informação relacionada