summaryrefslogtreecommitdiff
path: root/drivers/acpi/pci_root.c
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2012-06-21 23:48:50 -0600
committerBjorn Helgaas <bhelgaas@google.com>2013-05-15 10:51:14 -0600
commitf6c1c8ff439ccadc333b3920c7073e0792bcb9af (patch)
tree42f39dc409ce0e70d540d08ed40ca4c8202e6e2e /drivers/acpi/pci_root.c
parent12b03188ab2afed784e416b4fb1366b4a6915ac0 (diff)
downloadlwn-f6c1c8ff439ccadc333b3920c7073e0792bcb9af.tar.gz
lwn-f6c1c8ff439ccadc333b3920c7073e0792bcb9af.zip
PCI/ACPI: Check acpi_resource_to_address64() return value
We should check the acpi_resource_to_address64() return value, which also removes the need to validate the resource type beforehand. No functional change. Found by Coverity (CID 113815). Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi/pci_root.c')
-rw-r--r--drivers/acpi/pci_root.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/acpi/pci_root.c b/drivers/acpi/pci_root.c
index 1dd6f6c85874..f6c0998f248a 100644
--- a/drivers/acpi/pci_root.c
+++ b/drivers/acpi/pci_root.c
@@ -100,13 +100,12 @@ get_root_bridge_busnr_callback(struct acpi_resource *resource, void *data)
{
struct resource *res = data;
struct acpi_resource_address64 address;
+ acpi_status status;
- if (resource->type != ACPI_RESOURCE_TYPE_ADDRESS16 &&
- resource->type != ACPI_RESOURCE_TYPE_ADDRESS32 &&
- resource->type != ACPI_RESOURCE_TYPE_ADDRESS64)
+ status = acpi_resource_to_address64(resource, &address);
+ if (ACPI_FAILURE(status))
return AE_OK;
- acpi_resource_to_address64(resource, &address);
if ((address.address_length > 0) &&
(address.resource_type == ACPI_BUS_NUMBER_RANGE)) {
res->start = address.minimum;