Re: [PATCH] Intel Alder IOAPIC fix

From: James Bottomley
Date: Mon Jan 12 2004 - 19:28:38 EST


On Mon, 2004-01-12 at 18:04, Linus Torvalds wrote:
> for (i = 0; i < 6; i++) {
> if (!pci_resource_start(dev, i))
> continue;
> if (!pci_resource_len(dev, i))
> continue;

Unfortunately this won't work because of the properties of insert
resource. The BAR covers the second IO APIC at fec01000-fec013ff.
However, this sits right in the middle of the fixmap region:

fec00000-fec08fff : reserved

This check in insert_resource makes sure that the resource being
inserted has to end beyond the resource it is replacing:

/* existing resource overlaps end of new resource */
if (next->end > new->end)
goto out;

I could hack up another insert resource function that would put the
resource *under* anything else it finds (i.e. the reserved region).

Otherwise, everything will work since the i386 pci code assumes that if
the resource already has a parent, it has already been correctly
assigned, so won't try to reassign it.

James


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/