linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/1] PCI/VPD: Fix blocking of VPD data in lspci for QLogic 1077:2261
@ 2021-04-09 21:51 Arun Easi
  2021-04-09 21:51 ` [PATCH v2 1/1] " Arun Easi
  0 siblings, 1 reply; 3+ messages in thread
From: Arun Easi @ 2021-04-09 21:51 UTC (permalink / raw)
  To: Bjorn Helgaas; +Cc: linux-pci, Girish Basrur, Quinn Tran

Hi Bjorn,

Please queue this up for the next release.

Change from v1:
    * Commit message modified to add more clarity on the chronology of
      the issues referred as well as justification.

Regards,
-Arun

Arun Easi (1):
  PCI/VPD: Fix blocking of VPD data in lspci for QLogic 1077:2261

 drivers/pci/vpd.c | 1 -
 1 file changed, 1 deletion(-)

-- 
2.9.5

base-commit: ed4d2116b283a1a79e2911c687d83e6b33a462d3

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH v2 1/1] PCI/VPD: Fix blocking of VPD data in lspci for QLogic 1077:2261
  2021-04-09 21:51 [PATCH v2 0/1] PCI/VPD: Fix blocking of VPD data in lspci for QLogic 1077:2261 Arun Easi
@ 2021-04-09 21:51 ` Arun Easi
  2021-04-14 20:45   ` Bjorn Helgaas
  0 siblings, 1 reply; 3+ messages in thread
From: Arun Easi @ 2021-04-09 21:51 UTC (permalink / raw)
  To: Bjorn Helgaas; +Cc: linux-pci, Girish Basrur, Quinn Tran

"lspci -vvv" for Qlogic Fibre Channel HBA 1077:2261 displays
"Vital Product Data" as "Not readable" today and thus preventing
customers from getting relevant HBA information. Fix it by removing
the blacklist quirk.

The VPD quirk was added by [0] to avoid a system NMI; this issue has
been long fixed in the HBA firmware. In addition, PCI also has changes
to check the VPD size [1], so this quirk can be reverted now regardless
of a firmware update.

Some more details can be found in the following thread:
    "VPD blacklist of Marvell QLogic 1077/2261" [2]

[0] 0d5370d1d852 ("PCI: Prevent VPD access for QLogic ISP2722")
[1] 104daa71b396 ("PCI: Determine actual VPD size on first access")
[2] https://lore.kernel.org/linux-pci/alpine.LRH.2.21.9999.2012161641230.28924@irv1user01.caveonetworks.com/
[3] https://lore.kernel.org/linux-pci/alpine.LRH.2.21.9999.2104071535110.13940@irv1user01.caveonetworks.com/

Clarification on why [0], which appeared in v4.11, would be an issue
given that [1] appeared in v4.6:

    Firstly, we do not have information on which exact kernel the
    tester was using that resulted in [0]. That said, the call
    trace for the issue had pci_vpd_pci22_* calls, which appeared
    only in pre-4.6 kernels. Those functions were renamed v4.6 and
    above, so tester was indeed testing using an older kernel.
    See [3] for further details.

Signed-off-by: Arun Easi <aeasi@marvell.com>
CC: stable@vger.kernel.org      # v4.6+
---
 drivers/pci/vpd.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/pci/vpd.c b/drivers/pci/vpd.c
index 6909253..a41818a 100644
--- a/drivers/pci/vpd.c
+++ b/drivers/pci/vpd.c
@@ -474,7 +474,6 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LSI_LOGIC, 0x005d, quirk_blacklist_vpd);
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LSI_LOGIC, 0x005f, quirk_blacklist_vpd);
 DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATTANSIC, PCI_ANY_ID,
 		quirk_blacklist_vpd);
-DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_QLOGIC, 0x2261, quirk_blacklist_vpd);
 /*
  * The Amazon Annapurna Labs 0x0031 device id is reused for other non Root Port
  * device types, so the quirk is registered for the PCI_CLASS_BRIDGE_PCI class.
-- 
2.9.5


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2 1/1] PCI/VPD: Fix blocking of VPD data in lspci for QLogic 1077:2261
  2021-04-09 21:51 ` [PATCH v2 1/1] " Arun Easi
@ 2021-04-14 20:45   ` Bjorn Helgaas
  0 siblings, 0 replies; 3+ messages in thread
From: Bjorn Helgaas @ 2021-04-14 20:45 UTC (permalink / raw)
  To: Arun Easi; +Cc: Bjorn Helgaas, linux-pci, Girish Basrur, Quinn Tran

On Fri, Apr 09, 2021 at 02:51:53PM -0700, Arun Easi wrote:
> "lspci -vvv" for Qlogic Fibre Channel HBA 1077:2261 displays
> "Vital Product Data" as "Not readable" today and thus preventing
> customers from getting relevant HBA information. Fix it by removing
> the blacklist quirk.
> 
> The VPD quirk was added by [0] to avoid a system NMI; this issue has
> been long fixed in the HBA firmware. In addition, PCI also has changes
> to check the VPD size [1], so this quirk can be reverted now regardless
> of a firmware update.
> 
> Some more details can be found in the following thread:
>     "VPD blacklist of Marvell QLogic 1077/2261" [2]
> 
> [0] 0d5370d1d852 ("PCI: Prevent VPD access for QLogic ISP2722")
> [1] 104daa71b396 ("PCI: Determine actual VPD size on first access")
> [2] https://lore.kernel.org/linux-pci/alpine.LRH.2.21.9999.2012161641230.28924@irv1user01.caveonetworks.com/
> [3] https://lore.kernel.org/linux-pci/alpine.LRH.2.21.9999.2104071535110.13940@irv1user01.caveonetworks.com/
> 
> Clarification on why [0], which appeared in v4.11, would be an issue
> given that [1] appeared in v4.6:
> 
>     Firstly, we do not have information on which exact kernel the
>     tester was using that resulted in [0]. That said, the call
>     trace for the issue had pci_vpd_pci22_* calls, which appeared
>     only in pre-4.6 kernels. Those functions were renamed v4.6 and
>     above, so tester was indeed testing using an older kernel.
>     See [3] for further details.
> 
> Signed-off-by: Arun Easi <aeasi@marvell.com>
> CC: stable@vger.kernel.org      # v4.6+

Applied to pci/vpd for v5.13, thanks!

> ---
>  drivers/pci/vpd.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/drivers/pci/vpd.c b/drivers/pci/vpd.c
> index 6909253..a41818a 100644
> --- a/drivers/pci/vpd.c
> +++ b/drivers/pci/vpd.c
> @@ -474,7 +474,6 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LSI_LOGIC, 0x005d, quirk_blacklist_vpd);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_LSI_LOGIC, 0x005f, quirk_blacklist_vpd);
>  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATTANSIC, PCI_ANY_ID,
>  		quirk_blacklist_vpd);
> -DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_QLOGIC, 0x2261, quirk_blacklist_vpd);
>  /*
>   * The Amazon Annapurna Labs 0x0031 device id is reused for other non Root Port
>   * device types, so the quirk is registered for the PCI_CLASS_BRIDGE_PCI class.
> -- 
> 2.9.5
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-04-14 20:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-09 21:51 [PATCH v2 0/1] PCI/VPD: Fix blocking of VPD data in lspci for QLogic 1077:2261 Arun Easi
2021-04-09 21:51 ` [PATCH v2 1/1] " Arun Easi
2021-04-14 20:45   ` Bjorn Helgaas

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).