[parisc-linux] Fix /proc/iomem

Grant Grundler grundler at parisc-linux.org
Thu Oct 18 15:31:48 MDT 2007


On Sun, Oct 14, 2007 at 08:48:27AM -0600, Matthew Wilcox wrote:
> 
> commit 5d04e33a34814d0cc3029f4b1ba0e62829cb4610
> Author: Matthew Wilcox <matthew at wil.cx>
> Date:   Sun Oct 14 10:13:31 2007 -0400
> 
>     parisc: Fix infinite loop in /proc/iomem
>     
>     pcibios_link_hba_resources() could corrupt the resource tree by inserting
>     resources in the wrong place.  Fix this by calling pci_claim_resource()
>     for PCI-PCI bridges.  Delete pcibios_link_hba_resources as we shouldn't
>     need it any more.  Also get rid of lba_claim_dev_resources() and just
>     call pci_claim_resource() directly.

Nice!

Just one question on this bit:

> @@ -803,6 +768,9 @@ lba_fixup_bus(struct pci_bus *bus)
>  				DBG("lba_fixup_bus() WTF? 0x%lx [%lx/%lx] XXX",
>  					res->flags, res->start, res->end);
>  			}
> +			if ((i != PCI_ROM_RESOURCE) ||
> +			    (res->flags & IORESOURCE_ROM_ENABLE))
> +				pci_claim_resource(dev, i);
>  		}
>  

Why would ROM_ENABLE be set for something that's not a ROM?
I would expect "is ROM BAR _and_ ROM_ENABLE".

What am I missing? Maybe add a comment for this?

the rest looks good.

thanks,
grant



More information about the parisc-linux mailing list