]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
PCI: cpqphp: Use PCI_POSSIBLE_ERROR() to check config reads
authorweiyufeng <weiyufeng@kylinos.cn>
Tue, 6 Aug 2024 06:50:50 +0000 (14:50 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 14 Dec 2024 18:51:04 +0000 (19:51 +0100)
commit48597c484b826d2d5c202dba5c27bd9345bd7004
tree36c15fa5498440d9022390c2b04406c8bbc2f892
parent1784ec80bd1cd62c832f8ecb25aaa5ba1e7aceb9
PCI: cpqphp: Use PCI_POSSIBLE_ERROR() to check config reads

[ Upstream commit a18a025c2fb5fbf2d1d0606ea0d7441ac90e9c39 ]

When config pci_ops.read() can detect failed PCI transactions, the data
returned to the CPU is PCI_ERROR_RESPONSE (~0 or 0xffffffff).

Obviously a successful PCI config read may *also* return that data if a
config register happens to contain ~0, so it doesn't definitively indicate
an error unless we know the register cannot contain ~0.

Use PCI_POSSIBLE_ERROR() to check the response we get when we read data
from hardware.  This unifies PCI error response checking and makes error
checks consistent and easier to find.

Link: https://lore.kernel.org/r/b12005c0d57bb9d4c8b486724d078b7bd92f8321.1637243717.git.naveennaidu479@gmail.com
Signed-off-by: Naveen Naidu <naveennaidu479@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Stable-dep-of: e2226dbc4a49 ("PCI: cpqphp: Fix PCIBIOS_* return value confusion")
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/pci/hotplug/cpqphp_pci.c