Commit 9a928660 authored by Yinghai Lu's avatar Yinghai Lu Committed by Linus Torvalds

pci: don't reassign to ROM res if it is not going to be enabled

A ROM resource that doesn't fit should not cause us to try to re-assign
all the bus resources.  Nobody generally cares, and re-assigning is
going to just cause way more troubles than it tries to solve.
Signed-off-by: default avatarYinghai Lu <yinghai@kernel.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 30ff056c
...@@ -101,9 +101,17 @@ static void __assign_resources_sorted(struct resource_list *head, ...@@ -101,9 +101,17 @@ static void __assign_resources_sorted(struct resource_list *head,
for (list = head->next; list;) { for (list = head->next; list;) {
res = list->res; res = list->res;
idx = res - &list->dev->resource[0]; idx = res - &list->dev->resource[0];
if (pci_assign_resource(list->dev, idx)) { if (pci_assign_resource(list->dev, idx)) {
if (fail_head && !pci_is_root_bus(list->dev->bus)) if (fail_head && !pci_is_root_bus(list->dev->bus)) {
add_to_failed_list(fail_head, list->dev, res); /*
* if the failed res is for ROM BAR, and it will
* be enabled later, don't add it to the list
*/
if (!((idx == PCI_ROM_RESOURCE) &&
(!(res->flags & IORESOURCE_ROM_ENABLE))))
add_to_failed_list(fail_head, list->dev, res);
}
res->start = 0; res->start = 0;
res->end = 0; res->end = 0;
res->flags = 0; res->flags = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment