Hi Ash, Thanks for reporting. On Fri, Mar 19, 2021 at 12:16 PM <ash@xxxxxx> wrote: > > From kernel version 5.10 onwards, none of the drives attached to an Adaptec > 6805H HBA appear. > > Building and installing the mainline kernel (5.12-rc3) does not fix the > issue, neither does the latest longterm (5.10.24). > > 'dmesg | grep pm8' shows: > [ 0.810874] pm80xx 0000:01:00.0: pm80xx: driver version 0.1.40 > [ 0.811542] pm80xx 0000:01:00.0: enabling device (0000 -> 0002) > [ 0.812309] :: pm8001_pci_alloc 525:Setting link rate to default value > [ 3.239584] pm80xx0:: pm8001_pci_probe 1112:chip_init failed [ret: -16] > [ 3.262231] pm80xx: probe of 0000:01:00.0 failed with error -16 > > A bisection reveals the issue appears with the commit show below, with this > commit reverted, the drives attached to a 6805H appear once again. > > > commit 05c6c029a44d9f43715577e33e95eba87f44d285 > > Author: Viswas G <Viswas.G@xxxxxxxxxxxxx> > > Date: Mon Oct 5 20:20:08 2020 +0530 > > > > scsi: pm80xx: Increase number of supported queues > > > > Current driver uses fixed number of Inbound and Outbound queues and > all of > > the I/O, TMF and internal requests are submitted through those. A > global > > spin lock is used to control the shared access. This can create a lock > > contention and it is real bottleneck in the I/O path. > > > > To avoid this, the number of supported Inbound and Outbound queues is > > increased to 64, and the number of queues used is decided based on > number > > of CPU cores online and number of MSI-X vectors allocated. Also add > locks > > per queue instead of using the global lock. > > > > Link: > https://lore.kernel.org/r/20201005145011.23674-2-Viswas.G@xxxxxxxxxxxxxxxxx > > Acked-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxx> > > Signed-off-by: Viswas G <Viswas.G@xxxxxxxxxxxxx> > > Signed-off-by: Ruksar Devadi <Ruksar.devadi@xxxxxxxxxxxxx> > > Signed-off-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx> > +cc Viswas and Ruksar. Hi Viswas, hi Ruksar, Can you please look into it? Thanks! > 'lspci -vvv' on working kernel: > > > 01:00.0 Serial Attached SCSI controller: Adaptec PMC-Sierra PM8001 SAS HBA > [Series 6H] (rev 05) > > Subsystem: Adaptec PMC-Sierra PM8001 SAS HBA [Series 6H] > > 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- > > Latency: 0, Cache Line Size: 64 bytes > > Interrupt: pin A routed to IRQ 16 > > Region 0: Memory at f7d60000 (64-bit, non-prefetchable) [size=64K] > > Region 2: Memory at f7d50000 (64-bit, non-prefetchable) [size=64K] > > Region 4: Memory at f7d40000 (32-bit, non-prefetchable) [size=64K] > > Region 5: Memory at f7d00000 (32-bit, non-prefetchable) > [size=256K] > > Expansion ROM at f7c00000 [disabled] [size=1M] > > Capabilities: [40] Power Management version 3 > > Flags: PMEClk- DSI- D1+ D2- AuxCurrent=375mA > PME(D0+,D1-,D2-,D3hot-,D3cold-) > > Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME- > > Capabilities: [50] MSI: Enable- Count=1/32 Maskable- 64bit+ > > Address: 0000000000000000 Data: 0000 > > Capabilities: [70] Express (v2) Endpoint, MSI 00 > > DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s > <1us, L1 <8us > > ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- > SlotPowerLimit 0.000W > > DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq- > > RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ > > MaxPayload 128 bytes, MaxReadReq 512 bytes > > DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- > TransPend- > > LnkCap: Port #0, Speed 5GT/s, Width x8, ASPM L0s L1, Exit > Latency L0s <512ns, L1 <64us > > ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp- > > LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+ > > ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- > > LnkSta: Speed 5GT/s (ok), Width x4 (downgraded) > > TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- > > DevCap2: Completion Timeout: Not Supported, TimeoutDis+ > NROPrPrP- LTR- > > 10BitTagComp- 10BitTagReq- OBFF Not Supported, > ExtFmt- EETLPPrefix- > > EmergencyPowerReduction Not Supported, > EmergencyPowerReductionInit- > > FRS- TPHComp- ExtTPHComp- > > 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: -3.5dB, > EqualizationComplete- EqualizationPhase1- > > EqualizationPhase2- EqualizationPhase3- > LinkEqualizationRequest- > > Retimer- 2Retimers- CrosslinkRes: unsupported > > Capabilities: [ac] MSI-X: Enable+ Count=16 Masked- > > Vector table: BAR=0 offset=00002000 > > PBA: BAR=0 offset=00004000 > > 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- > AdvNonFatalErr- > > CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- > AdvNonFatalErr+ > > AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- > ECRCChkCap+ ECRCChkEn- > > MultHdrRecCap- MultHdrRecEn- TLPPfxPres- > HdrLogCap- > > HeaderLog: 00000000 00000000 00000000 00000000 > > Kernel driver in use: pm80xx > > Kernel modules: pm80xx > > 'lspci -vvv' on non-working kernel (5.12-rc3): > > > 01:00.0 Serial Attached SCSI controller: Adaptec PMC-Sierra PM8001 SAS HBA > [Series 6H] (rev 05) > > Subsystem: Adaptec PMC-Sierra PM8001 SAS HBA [Series 6H] > > 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 16 > > Region 0: Memory at f7d60000 (64-bit, non-prefetchable) [size=64K] > > Region 2: Memory at f7d50000 (64-bit, non-prefetchable) [size=64K] > > Region 4: Memory at f7d40000 (32-bit, non-prefetchable) [size=64K] > > Region 5: Memory at f7d00000 (32-bit, non-prefetchable) > [size=256K] > > Expansion ROM at f7c00000 [disabled] [size=1M] > > Capabilities: [40] Power Management version 3 > > Flags: PMEClk- DSI- D1+ D2- AuxCurrent=375mA > PME(D0+,D1-,D2-,D3hot-,D3cold-) > > Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME- > > Capabilities: [50] MSI: Enable- Count=1/32 Maskable- 64bit+ > > Address: 0000000000000000 Data: 0000 > > Capabilities: [70] Express (v2) Endpoint, MSI 00 > > DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s > <1us, L1 <8us > > ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- > SlotPowerLimit 116.000W > > DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq- > > RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ > > MaxPayload 128 bytes, MaxReadReq 512 bytes > > DevSta: CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- > TransPend- > > LnkCap: Port #0, Speed 5GT/s, Width x8, ASPM L0s L1, Exit > Latency L0s <512ns, L1 <64us > > ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp- > > LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+ > > ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- > > LnkSta: Speed 5GT/s (ok), Width x4 (downgraded) > > TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- > > DevCap2: Completion Timeout: Not Supported, TimeoutDis+ > NROPrPrP- LTR- > > 10BitTagComp- 10BitTagReq- OBFF Not Supported, > ExtFmt- EETLPPrefix- > > EmergencyPowerReduction Not Supported, > EmergencyPowerReductionInit- > > FRS- TPHComp- ExtTPHComp- > > 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: -3.5dB, > EqualizationComplete- EqualizationPhase1- > > EqualizationPhase2- EqualizationPhase3- > LinkEqualizationRequest- > > Retimer- 2Retimers- CrosslinkRes: unsupported > > Capabilities: [ac] MSI-X: Enable+ Count=16 Masked- > > Vector table: BAR=0 offset=00002000 > > PBA: BAR=0 offset=00004000 > > 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- > AdvNonFatalErr- > > CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- > AdvNonFatalErr+ > > AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- > ECRCChkCap+ ECRCChkEn- > > MultHdrRecCap- MultHdrRecEn- TLPPfxPres- > HdrLogCap- > > HeaderLog: 00000000 00000000 00000000 00000000 > > Kernel modules: pm80xx >