Thanks Jinpu. We will look into that and update. Regards, Viswas G > -----Original Message----- > From: Jinpu Wang <jinpu.wang@xxxxxxxxxxxxxxx> > Sent: Friday, March 19, 2021 5:00 PM > To: ash@xxxxxx; Viswas G - I30667 <Viswas.G@xxxxxxxxxxxxx>; Ruksar > Devadi - I52327 <Ruksar.devadi@xxxxxxxxxxxxx> > Cc: Linux SCSI Mailinglist <linux-scsi@xxxxxxxxxxxxxxx> > Subject: Re: [REGRESSION] pm8001: Adaptec 6805H fails to initialize after > v5.10.0 > > EXTERNAL EMAIL: Do not click links or open attachments unless you know the > content is safe > > 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@xxxxxxxxxxxx > > m.com > > > 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 > >