On Fri, Aug 17, 2012 at 03:25:22PM -0600, Bjorn Helgaas wrote:
> On Fri, Aug 17, 2012 at 3:07 PM, Thierry Reding
> <email@example.com> wrote:
> > On Fri, Aug 17, 2012 at 10:48:39PM +0200, Thierry Reding wrote:
> >> On Fri, Aug 17, 2012 at 02:39:34PM -0600, Bjorn Helgaas wrote:
> > [...]
> >> > Well, maybe you just need to turn on CONFIG_HOTPLUG. How would that
> >> > affect you? I think we would still have to change some __inits to
> >> > __devinit, including pcibios_update_irq(), but it might be more
> >> > manageable.
> >> You said that depending on HOTPLUG wouldn't be enough because it would
> >> exclude reenumeration at runtime if HOTPLUG wasn't defined. Also it is
> >> theoretically possible to build a kernel without HOTPLUG but have the
> >> enumeration start after init because of deferred probing. Those cases
> >> won't work if we keep __init or __devinit respectively, right?
> > Another possibility would be to make PCI select HOTPLUG or depend on it.
> > That way it would be made sure that __devinit wouldn't cause all the
> > functions to be discarded after init.
> There's been some discussion recently about whether CONFIG_HOTPLUG is
> worth keeping any more, but nothing's been resolved yet. If we did
> decide to remove CONFIG_HOTPLUG, or require it for PCI, I would rather
> just remove all the __devinit annotations because they'd be
I've missed that discussion. Can you point me to it?
> > Also, using PCI without HOTPLUG is sort of contradictory.
> I'm not sure I follow this one. I can easily imagine embedded systems
> that use PCI internally but have no slots or connectors, so there's no
> possibility of anything changing.
Contradictory was probably the wrong word. What I meant to say was that
for systems that use PCI it probably wouldn't hurt to enable HOTPLUG as
well. That would sort of go with what you said above, regarding the
removal of HOTPLUG altogether.
Description: PGP signature