[patch] 2.5.18 pci/setup-bus.c: incorrect BUG() calls

Ivan Kokshaysky (ink@jurassic.park.msu.ru)
Mon, 27 May 2002 20:51:54 +0400


Previously assigned resources are perfectly valid - just silently
ignore them.

Ivan.

--- 2.5.18/drivers/pci/setup-bus.c Sat May 25 05:55:25 2002
+++ linux/drivers/pci/setup-bus.c Mon May 27 16:06:39 2002
@@ -228,10 +228,8 @@ pbus_size_io(struct pci_bus *bus)
struct resource *r = &dev->resource[i];
unsigned long r_size;

- if (!(r->flags & IORESOURCE_IO))
+ if (r->parent || !(r->flags & IORESOURCE_IO))
continue;
- if (r->parent)
- BUG();
r_size = r->end - r->start + 1;

if (r_size < 0x400)
@@ -283,10 +281,8 @@ pbus_size_mem(struct pci_bus *bus, unsig
struct resource *r = &dev->resource[i];
unsigned long r_size;

- if ((r->flags & mask) != type)
+ if (r->parent || (r->flags & mask) != type)
continue;
- if (r->parent)
- BUG();
r_size = r->end - r->start + 1;
/* For bridges size != alignment */
align = (i < PCI_BRIDGE_RESOURCES) ? r_size : r->start;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/