linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: <Viswas.G@microchip.com>
To: <jinpu.wang@cloud.ionos.com>, <ash@ai0.uk>,
	<Ruksar.devadi@microchip.com>
Cc: <linux-scsi@vger.kernel.org>
Subject: RE: [REGRESSION] pm8001: Adaptec 6805H fails to initialize after v5.10.0
Date: Fri, 19 Mar 2021 16:54:38 +0000	[thread overview]
Message-ID: <SN6PR11MB3488473F4D3CAEEBE583AB159D689@SN6PR11MB3488.namprd11.prod.outlook.com> (raw)
In-Reply-To: <CAMGffE=B9QRncb2UO3aCfbH9naYU6-pP_c6T3PuHNRKRpnkDJA@mail.gmail.com>

Thanks Jinpu. We will look into that and update.

Regards,
Viswas G

> -----Original Message-----
> From: Jinpu Wang <jinpu.wang@cloud.ionos.com>
> Sent: Friday, March 19, 2021 5:00 PM
> To: ash@ai0.uk; Viswas G - I30667 <Viswas.G@microchip.com>; Ruksar
> Devadi - I52327 <Ruksar.devadi@microchip.com>
> Cc: Linux SCSI Mailinglist <linux-scsi@vger.kernel.org>
> 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@ai0.uk> 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@microchip.com>
> > > 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@microchip.co
> > m.com
> > >     Acked-by: Jack Wang <jinpu.wang@cloud.ionos.com>
> > >     Signed-off-by: Viswas G <Viswas.G@microchip.com>
> > >     Signed-off-by: Ruksar Devadi <Ruksar.devadi@microchip.com>
> > >     Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
> >
> +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
> >

  reply	other threads:[~2021-03-19 16:55 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-19 11:16 [REGRESSION] pm8001: Adaptec 6805H fails to initialize after v5.10.0 ash
2021-03-19 11:30 ` Jinpu Wang
2021-03-19 16:54   ` Viswas.G [this message]
2021-03-24 18:06     ` Viswas.G
2021-03-24 21:46       ` Ash Izat
2021-03-25  6:04         ` Jinpu Wang
2021-04-01  3:36       ` Martin K. Petersen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=SN6PR11MB3488473F4D3CAEEBE583AB159D689@SN6PR11MB3488.namprd11.prod.outlook.com \
    --to=viswas.g@microchip.com \
    --cc=Ruksar.devadi@microchip.com \
    --cc=ash@ai0.uk \
    --cc=jinpu.wang@cloud.ionos.com \
    --cc=linux-scsi@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).