linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arun Easi <aeasi@marvell.com>
To: Bjorn Helgaas <bhelgaas@google.com>
Cc: <linux-pci@vger.kernel.org>, Girish Basrur <GBasrur@marvell.com>,
	"Quinn Tran" <qutran@marvell.com>
Subject: [PATCH v2 1/1] PCI/VPD: Fix blocking of VPD data in lspci for QLogic 1077:2261
Date: Fri, 9 Apr 2021 14:51:53 -0700	[thread overview]
Message-ID: <20210409215153.16569-2-aeasi@marvell.com> (raw)
In-Reply-To: <20210409215153.16569-1-aeasi@marvell.com>

"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


  reply	other threads:[~2021-04-09 21:52 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
2021-04-14 20:45   ` [PATCH v2 1/1] " Bjorn Helgaas

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=20210409215153.16569-2-aeasi@marvell.com \
    --to=aeasi@marvell.com \
    --cc=GBasrur@marvell.com \
    --cc=bhelgaas@google.com \
    --cc=linux-pci@vger.kernel.org \
    --cc=qutran@marvell.com \
    /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).