У меня есть несколько HP Blades Gen7, оснащенных картами QLogic Infiniband IBA7322, которые я хотел бы использовать с CentOS 8. Проблема в том, что я не могу найти для них нужные драйверы. Вся информация, которую я нахожу, либо устарела, либо ссылки не работают (например, ссылки на загрузку Marvell).
Я вижу карту через lspci, но кроме этого мне не удалось ее включить (так сказать).
Может ли кто-нибудь указать мне направление решения этой проблемы?
Ваше здоровье.
Редактировать:
результаты из lspci -vv
:
01:00.0 InfiniBand: QLogic Corp. IBA7322 QDR InfiniBand HCA (rev 02)
Subsystem: Hewlett-Packard Company Device 178a
Physical Slot: 0
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 10
Region 0: Memory at fd400000 (64-bit, non-prefetchable) [size=4M]
Capabilities: [40] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [70] Express (v2) Endpoint, MSI 00
DevCap: MaxPayload 512 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us
ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 0.000W
DevCtl: Report errors: Correctable+ Non-Fatal+ Fatal+ Unsupported+
RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 128 bytes, MaxReadReq 4096 bytes
DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
LnkCap: Port #0, Speed 5GT/s, Width x8, ASPM L0s, Exit Latency L0s <4us
ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 5GT/s, Width x8, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Not Supported, TimeoutDis+, LTR-, OBFF Not Supported
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled
AtomicOpsCtl: ReqEn-
LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance De-emphasis: -6dB
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-, EqualizationPhase1-
EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
Capabilities: [b0] MSI-X: Enable- Count=32 Masked-
Vector table: BAR=0 offset=00008000
PBA: BAR=0 offset=00009000
Capabilities: [100 v1] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq+ ACSViol-
UESvrt: DLP- SDES+ TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn-
MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
HeaderLog: 00000000 00000000 00000000 00000000
решение1
Первое, что нужно сделать, это получить идентификаторы PCI-поставщика и устройства для рассматриваемого оборудования. Ваша карта, похоже, 1077:7322. AБеглый взглядв базе данных драйверов Linux указано, что эта карта использует драйвер ib_qib.
Я просмотрел документацию RHELудаленные драйверы в RHEL 8, но не увидел этот драйвер. Однако я запустил виртуальную машину RHEL 8, и драйвер больше не присутствует и не включен в соответствующей конфигурации ядра. Хотя он присутствует в RHEL 7.
В таких обстоятельствах люди обычно используют старое оборудование, чтобы использоватьэлрепоРепозиторий, который для RHEL 8 содержит отсутствующий драйвер ib_qib (и несколько других драйверов, которые Red Hat удалила). Например:
dnf install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
dnf install kmod-ib_qib
решение2
после многих-многих попыток мой друг бросил привет Мэри и перекомпилировал ядро 4.19 на Rocky 8.5 и включил драйвер qib
. Он был там все время, просто не был скомпилирован в ядре по умолчанию.
Теперь мы заставили старую карту QLogic снова работать. Она подключена к (ух ты!) коммутатору Mellanox Infiniband, на котором запущен Subnet Manager.
Узлы способны обмениваться данными со скоростью 40 Гбит/с между собой, а также могут взаимодействовать с гораздо более новыми картами Mellanox ConnectX5 со скоростью 100 Гбит/с.
Теперь в стране Infiniband все хорошо!
Надеюсь, это поможет кому-то, и если есть какие-то вопросы, я постараюсь ответить на них. Просто помните, что я ни в коем случае не эксперт в этих вещах. Просто парень, которому нужно было что-то придумать и сделать старое оборудование снова актуальным!