Re: [PATCH 01/18] char: moxa: call disable_pci_device() ifpci_probe() failed

From: Dan Carpenter
Date: Sat Aug 07 2010 - 05:59:23 EST


On Sat, Aug 07, 2010 at 12:55:12PM +0400, Vasiliy Kulikov wrote:
> On Sat, Aug 07, 2010 at 09:22 +0200, Dan Carpenter wrote:
> > On Fri, Aug 06, 2010 at 11:49:10PM +0400, Kulikov Vasiliy wrote:
> > > Driver should call disable_pci_device() if it returns from pci_probe()
> > > with error. Also it must not be called if pci_request_region() fails as
> > > it means that somebody uses device resources and rules the device.
> > >
> >
> > I think we should disable it actually. The comments on
> > pci_enable_device() and pci_disable_device() say that only the first and
> > last callers actually enable and disable it. The others just increment
> > or decrement a counter.
>
> See this thread: http://lkml.org/lkml/2005/2/13/82
>
> Specifically this mail:
>
> Date Mon, 14 Feb 2005 14:51:26 -0500
> From Jeff Garzik <>
>
> ...
> You also need to consider situations such as out-of-tree drivers
> for the same hardware (might not use PCI API), and situations where you
> have peer devices discovered and used (PCI API doesn't have "hey, <this>
> device is associated with <current driver>, too" capability).
> ...
>
> Searching for 'pci_disable_device() inurl:lkml' doesn't give me newer info
> aboud this problem, so I think it's better to play safe.
>

That's ancient. That's a couple months before the start of git.

git show v2.6.12:drivers/pci/pci.c

In those days pci_enable/disable_device() were not nestable. These days
we can just unwind normally so it's a big improvement.

regards,
dan carpenter
--
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/