Re: PCI Section mismatch error in linux-next.
From: Thierry Reding <hidden>
Date: 2012-08-20 07:16:59
Also in:
linux-pci
On Sun, Aug 19, 2012 at 10:30:36PM -0700, Greg KH wrote:
On Fri, Aug 17, 2012 at 11:32:47PM +0200, Thierry Reding wrote:quoted
On Fri, Aug 17, 2012 at 03:25:22PM -0600, Bjorn Helgaas wrote:quoted
On Fri, Aug 17, 2012 at 3:07 PM, Thierry Reding [off-list ref] wrote:quoted
On Fri, Aug 17, 2012 at 10:48:39PM +0200, Thierry Reding wrote:quoted
On Fri, Aug 17, 2012 at 02:39:34PM -0600, Bjorn Helgaas wrote:[...]quoted
quoted
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 superfluous.I've missed that discussion. Can you point me to it?It's pretty much just me saying the whole thing is a mess, causes problems, and really doesn't solve any memory usage issues. Ideally we should just: - remove CONFIG_HOTPLUG and assume it is enabled - because of that, we can delete the large majority of the __dev* markings The memory savings these days are so tiny, if at all, and everyone, including me, gets it wrong all the time. As we pretty much allow anything to be disabled/enabled at any point in time after boot, we are all running systems that rely on CONFIG_HOTPLUG anyway. To find a static system that doesn't need it is quite rare from what I have found.
I've been reading through the thread it seems like the consensus is to just drop it. Though there seems to be lacking a formal decision. Thierry
Attachments
- (unnamed) [application/pgp-signature] 836 bytes