===================================================================
@@ -1420,9 +1420,14 @@ static int check_unassigned_resources(st
for (i = PCI_IOV_RESOURCES; i <= PCI_IOV_RESOURCE_END; i++) {
struct resource *r = &dev->resource[i];
+ struct pci_bus_region region;
/* Not assigned, or rejected by kernel ? */
- if (r->flags && !r->start) {
+ if (!r->flags)
+ continue;
+
+ pcibios_resource_to_bus(dev, ®ion, res);
+ if (!region.start) {
(*unassigned)++;
return 1; /* return early from pci_walk_bus */
}