On Sun, 28 Feb 2010 15:49:39 -0800 Yinghai Lu <yinghai@xxxxxxxxxx> wrote: > please check > > [PATCH] pci: don't reassign to ROM res if it is not going to be > enabled > > Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx> > > --- > drivers/pci/setup-bus.c | 12 ++++++++++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > Index: linux-2.6/drivers/pci/setup-bus.c > =================================================================== > --- linux-2.6.orig/drivers/pci/setup-bus.c > +++ linux-2.6/drivers/pci/setup-bus.c > @@ -101,9 +101,17 @@ static void __assign_resources_sorted(st > for (list = head->next; list;) { > res = list->res; > idx = res - &list->dev->resource[0]; > + > if (pci_assign_resource(list->dev, idx)) { > - if (fail_head > && !pci_is_root_bus(list->dev->bus)) > - add_to_failed_list(fail_head, > list->dev, res); > + if (fail_head > && !pci_is_root_bus(list->dev->bus)) { > + /* > + * 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->end = 0; > res->flags = 0; > > I think this is on the right track; a failed ROM allocation shouldn't cause us to try to reassign resources. Generally the ROM isn't needed anyway, and even when it is we have to handle it specially anyway. Linus, does this patch fix your problem? -- Jesse Barnes, Intel Open Source Technology Center -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html