diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index f547db0a728fc..8bac3ce02609c 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -996,8 +996,10 @@ static int pci_register_host_bridge(struct pci_host_bridge *bridge) resource_list_for_each_entry_safe(window, n, &resources) { offset = window->offset; res = window->res; - if (!res->flags && !res->start && !res->end) + if (!res->flags && !res->start && !res->end) { + release_resource(res); continue; + } list_move_tail(&window->node, &bridge->windows);