Subject: Re: [PATCH] Don't call request_region() for 3C90x chips

From: Jeff Garzik <[email-masked]>
Date: Wed, 19 Jul 2006 13:57:37 -0400

Sergei Shtylylov wrote:
> It's generally not a good idea to call request_region() on an address returned 
> by pci_iomap(), even less so on a MMIO address. And there was absolutely no 
> point in claiming the region already claimed by the PCI core, especially with 
> the same PCI generic owner's name. As this is the only case of the 
> must_free_region flag being set, this flag may go away as well...
> 
> Signed-off-by: Sergei Shtylyov <[email-masked]>

I agree you have identified a bug, but this is not a solution.

The current driver bug is that it calls request_region() potentially on 
an MMIO address, but the solution is _not_ to completely avoid reserving 
the resource.

The region registered with the PCI core, but _not_ claimed by anyone. 
Someone still needs to either call pci_{request,release}_regions() or 
request_[mem_]region() to indicate that the resource is reserved.

This bug you have found was probably a missed detail during the 
conversion to the iomap API.

	Jeff