Generic Linux architectural discussions
 help / color / mirror / Atom feed
* Re: PCI Section mismatch error in linux-next.
       [not found]                   ` <20120820053036.GA23166@kroah.com>
@ 2012-08-21 14:32                     ` Geert Uytterhoeven
  2012-08-21 17:04                       ` Ralf Baechle
  0 siblings, 1 reply; 5+ messages in thread
From: Geert Uytterhoeven @ 2012-08-21 14:32 UTC (permalink / raw)
  To: Greg KH
  Cc: Thierry Reding, Bjorn Helgaas, David Daney, Ralf Baechle,
	linux-pci, linux-mips, Linux-Arch

Hi Greg,

On Mon, Aug 20, 2012 at 7:30 AM, Greg KH <gregkh@linuxfoundation.org> wrote:
> On Fri, Aug 17, 2012 at 11:32:47PM +0200, Thierry Reding wrote:
>> On Fri, Aug 17, 2012 at 03:25:22PM -0600, Bjorn Helgaas wrote:
>> > On Fri, Aug 17, 2012 at 3:07 PM, Thierry Reding
>> > <thierry.reding@avionic-design.de> 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
>> > 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.

Anyone who disables CONFIG_HOTPLUG in his defconfig files?

$ git grep CONFIG_HOTPLUG arch/*/*config
arch/frv/defconfig:# CONFIG_HOTPLUG is not set
arch/h8300/defconfig:# CONFIG_HOTPLUG is not set
arch/um/defconfig:CONFIG_HOTPLUG=y
$

Yep, (at least --- not all defconfigs are up-to-date) frv and h8300.

It seems to be hard, as it's enabled for all non-CONFIG_EXPERT (and
before that non-CONFIG_EMBEDDED) builds since Nov 2005
(full-history-linux commit 712f47cea7703a340406fde61e84eb86ce781988
 "[PATCH] HOTPLUG: always enable the .config option, unless EMBEDDED").

$ git grep CONFIG_EXPERT arch/*/*config
arch/frv/defconfig:CONFIG_EXPERT=y
arch/h8300/defconfig:CONFIG_EXPERT=y
arch/s390/defconfig:CONFIG_EXPERT=y
arch/um/defconfig:# CONFIG_EXPERT is not set
$

The same architectures, plus s390, who used to be an explicit negative
dependency before the commit above.

For a quick test, I enabled CONFIG_EXPERT and disabled CONFIG_HOTPLUG
in my Atari defconfig build, and it saved 168 bytes of code and 112 bytes of
data. Note that Atari doesn't have any hotpluggable hardware, hence no
real hotpluggable drivers.
Anyway, I'll sleep better now ;-)

FWIW, both tile and xtensa have their own duplicates of CONFIG_HOTPLUG:

$ git grep -w 'config HOTPLUG' -- "*Kconf*"
arch/tile/Kconfig:config HOTPLUG
arch/xtensa/Kconfig:config HOTPLUG
init/Kconfig:config HOTPLUG
$

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: PCI Section mismatch error in linux-next.
  2012-08-21 14:32                     ` PCI Section mismatch error in linux-next Geert Uytterhoeven
@ 2012-08-21 17:04                       ` Ralf Baechle
  2012-08-21 17:04                         ` Ralf Baechle
  2012-08-21 18:15                         ` Geert Uytterhoeven
  0 siblings, 2 replies; 5+ messages in thread
From: Ralf Baechle @ 2012-08-21 17:04 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Greg KH, Thierry Reding, Bjorn Helgaas, David Daney, linux-pci,
	linux-mips, Linux-Arch

On Tue, Aug 21, 2012 at 04:32:45PM +0200, Geert Uytterhoeven wrote:

> Anyone who disables CONFIG_HOTPLUG in his defconfig files?
> 
> $ git grep CONFIG_HOTPLUG arch/*/*config
> arch/frv/defconfig:# CONFIG_HOTPLUG is not set
> arch/h8300/defconfig:# CONFIG_HOTPLUG is not set
> arch/um/defconfig:CONFIG_HOTPLUG=y
> $
> 
> Yep, (at least --- not all defconfigs are up-to-date) frv and h8300.

Since we started stripping all the defconfigs down grepping through
arch/*/configs/ doesn't yield much useful information anymore :-(

There are currently 8 MIPS default configurations that dondo not enable
CONFIG_HOTPLUG.  I didn't check other architectures.

  Ralf

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: PCI Section mismatch error in linux-next.
  2012-08-21 17:04                       ` Ralf Baechle
@ 2012-08-21 17:04                         ` Ralf Baechle
  2012-08-21 18:15                         ` Geert Uytterhoeven
  1 sibling, 0 replies; 5+ messages in thread
From: Ralf Baechle @ 2012-08-21 17:04 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Greg KH, Thierry Reding, Bjorn Helgaas, David Daney, linux-pci,
	linux-mips, Linux-Arch

On Tue, Aug 21, 2012 at 04:32:45PM +0200, Geert Uytterhoeven wrote:

> Anyone who disables CONFIG_HOTPLUG in his defconfig files?
> 
> $ git grep CONFIG_HOTPLUG arch/*/*config
> arch/frv/defconfig:# CONFIG_HOTPLUG is not set
> arch/h8300/defconfig:# CONFIG_HOTPLUG is not set
> arch/um/defconfig:CONFIG_HOTPLUG=y
> $
> 
> Yep, (at least --- not all defconfigs are up-to-date) frv and h8300.

Since we started stripping all the defconfigs down grepping through
arch/*/configs/ doesn't yield much useful information anymore :-(

There are currently 8 MIPS default configurations that dondo not enable
CONFIG_HOTPLUG.  I didn't check other architectures.

  Ralf

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: PCI Section mismatch error in linux-next.
  2012-08-21 17:04                       ` Ralf Baechle
  2012-08-21 17:04                         ` Ralf Baechle
@ 2012-08-21 18:15                         ` Geert Uytterhoeven
  2012-08-21 18:15                           ` Geert Uytterhoeven
  1 sibling, 1 reply; 5+ messages in thread
From: Geert Uytterhoeven @ 2012-08-21 18:15 UTC (permalink / raw)
  To: Ralf Baechle
  Cc: Greg KH, Thierry Reding, Bjorn Helgaas, David Daney, linux-pci,
	linux-mips, Linux-Arch

Hi Ralf,

On Tue, Aug 21, 2012 at 7:04 PM, Ralf Baechle <ralf@linux-mips.org> wrote:
>> Anyone who disables CONFIG_HOTPLUG in his defconfig files?
>>
>> $ git grep CONFIG_HOTPLUG arch/*/*config
>> arch/frv/defconfig:# CONFIG_HOTPLUG is not set
>> arch/h8300/defconfig:# CONFIG_HOTPLUG is not set
>> arch/um/defconfig:CONFIG_HOTPLUG=y
>> $
>>
>> Yep, (at least --- not all defconfigs are up-to-date) frv and h8300.
>
> Since we started stripping all the defconfigs down grepping through
> arch/*/configs/ doesn't yield much useful information anymore :-(

Sure, but since CONFIG_HOTPLUG=y and CONFIG_EXPERT=n are the
defaults, disabling CONFIG_HOTPLUG should show up in the miniconfig.

> There are currently 8 MIPS default configurations that dondo not enable
> CONFIG_HOTPLUG.  I didn't check other architectures.

Strange, how come I didn't see those?
Ah, wrong file pattern. They're stored in the "configs" subdir, not in "config".
Better list:

$ git grep -w CONFIG_HOTPLUG arch/*/*config*
arch/arm/configs/at91x40_defconfig:# CONFIG_HOTPLUG is not set
arch/arm/configs/bcmring_defconfig:# CONFIG_HOTPLUG is not set
arch/arm/configs/edb7211_defconfig:# CONFIG_HOTPLUG is not set
arch/arm/configs/footbridge_defconfig:# CONFIG_HOTPLUG is not set
arch/arm/configs/fortunet_defconfig:# CONFIG_HOTPLUG is not set
arch/arm/configs/pleb_defconfig:# CONFIG_HOTPLUG is not set
arch/blackfin/configs/IP0X_defconfig:# CONFIG_HOTPLUG is not set
arch/cris/configs/artpec_3_defconfig:# CONFIG_HOTPLUG is not set
arch/cris/configs/etrax-100lx_v2_defconfig:# CONFIG_HOTPLUG is not set
arch/cris/configs/etraxfs_defconfig:# CONFIG_HOTPLUG is not set
arch/frv/defconfig:# CONFIG_HOTPLUG is not set
arch/h8300/defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5208evb_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5249evb_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5272c3_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5275evb_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5307c3_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5407c3_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5475evb_defconfig:# CONFIG_HOTPLUG is not set
arch/microblaze/configs/mmu_defconfig:# CONFIG_HOTPLUG is not set
arch/microblaze/configs/nommu_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/db1000_defconfig:CONFIG_HOTPLUG=y
arch/mips/configs/db1300_defconfig:CONFIG_HOTPLUG=y
arch/mips/configs/db1550_defconfig:CONFIG_HOTPLUG=y
arch/mips/configs/decstation_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/e55_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/ip22_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/ip28_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/jmr3927_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/lasat_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/pnx8550-stb810_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/rbtx49xx_defconfig:# CONFIG_HOTPLUG is not set
arch/mn10300/configs/asb2303_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/85xx/socrates_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/85xx/tqm8540_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/85xx/tqm8541_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/85xx/tqm8555_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/85xx/tqm8560_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/mpc866_ads_defconfig:# CONFIG_HOTPLUG is not set
arch/score/configs/spct6600_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/edosk7705_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/se7619_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/se7705_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/se7750_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/se7751_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/se7780_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/secureedge5410_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/shmin_defconfig:# CONFIG_HOTPLUG is not set
arch/um/defconfig:CONFIG_HOTPLUG=y
arch/unicore32/configs/unicore32_defconfig:CONFIG_HOTPLUG=y
arch/xtensa/configs/common_defconfig:# CONFIG_HOTPLUG is not set
arch/xtensa/configs/iss_defconfig:# CONFIG_HOTPLUG is not set
arch/xtensa/configs/s6105_defconfig:# CONFIG_HOTPLUG is not set
$

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: PCI Section mismatch error in linux-next.
  2012-08-21 18:15                         ` Geert Uytterhoeven
@ 2012-08-21 18:15                           ` Geert Uytterhoeven
  0 siblings, 0 replies; 5+ messages in thread
From: Geert Uytterhoeven @ 2012-08-21 18:15 UTC (permalink / raw)
  To: Ralf Baechle
  Cc: Greg KH, Thierry Reding, Bjorn Helgaas, David Daney, linux-pci,
	linux-mips, Linux-Arch

Hi Ralf,

On Tue, Aug 21, 2012 at 7:04 PM, Ralf Baechle <ralf@linux-mips.org> wrote:
>> Anyone who disables CONFIG_HOTPLUG in his defconfig files?
>>
>> $ git grep CONFIG_HOTPLUG arch/*/*config
>> arch/frv/defconfig:# CONFIG_HOTPLUG is not set
>> arch/h8300/defconfig:# CONFIG_HOTPLUG is not set
>> arch/um/defconfig:CONFIG_HOTPLUG=y
>> $
>>
>> Yep, (at least --- not all defconfigs are up-to-date) frv and h8300.
>
> Since we started stripping all the defconfigs down grepping through
> arch/*/configs/ doesn't yield much useful information anymore :-(

Sure, but since CONFIG_HOTPLUG=y and CONFIG_EXPERT=n are the
defaults, disabling CONFIG_HOTPLUG should show up in the miniconfig.

> There are currently 8 MIPS default configurations that dondo not enable
> CONFIG_HOTPLUG.  I didn't check other architectures.

Strange, how come I didn't see those?
Ah, wrong file pattern. They're stored in the "configs" subdir, not in "config".
Better list:

$ git grep -w CONFIG_HOTPLUG arch/*/*config*
arch/arm/configs/at91x40_defconfig:# CONFIG_HOTPLUG is not set
arch/arm/configs/bcmring_defconfig:# CONFIG_HOTPLUG is not set
arch/arm/configs/edb7211_defconfig:# CONFIG_HOTPLUG is not set
arch/arm/configs/footbridge_defconfig:# CONFIG_HOTPLUG is not set
arch/arm/configs/fortunet_defconfig:# CONFIG_HOTPLUG is not set
arch/arm/configs/pleb_defconfig:# CONFIG_HOTPLUG is not set
arch/blackfin/configs/IP0X_defconfig:# CONFIG_HOTPLUG is not set
arch/cris/configs/artpec_3_defconfig:# CONFIG_HOTPLUG is not set
arch/cris/configs/etrax-100lx_v2_defconfig:# CONFIG_HOTPLUG is not set
arch/cris/configs/etraxfs_defconfig:# CONFIG_HOTPLUG is not set
arch/frv/defconfig:# CONFIG_HOTPLUG is not set
arch/h8300/defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5208evb_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5249evb_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5272c3_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5275evb_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5307c3_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5407c3_defconfig:# CONFIG_HOTPLUG is not set
arch/m68k/configs/m5475evb_defconfig:# CONFIG_HOTPLUG is not set
arch/microblaze/configs/mmu_defconfig:# CONFIG_HOTPLUG is not set
arch/microblaze/configs/nommu_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/db1000_defconfig:CONFIG_HOTPLUG=y
arch/mips/configs/db1300_defconfig:CONFIG_HOTPLUG=y
arch/mips/configs/db1550_defconfig:CONFIG_HOTPLUG=y
arch/mips/configs/decstation_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/e55_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/ip22_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/ip28_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/jmr3927_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/lasat_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/pnx8550-stb810_defconfig:# CONFIG_HOTPLUG is not set
arch/mips/configs/rbtx49xx_defconfig:# CONFIG_HOTPLUG is not set
arch/mn10300/configs/asb2303_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/85xx/socrates_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/85xx/tqm8540_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/85xx/tqm8541_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/85xx/tqm8555_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/85xx/tqm8560_defconfig:# CONFIG_HOTPLUG is not set
arch/powerpc/configs/mpc866_ads_defconfig:# CONFIG_HOTPLUG is not set
arch/score/configs/spct6600_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/edosk7705_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/se7619_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/se7705_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/se7750_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/se7751_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/se7780_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/secureedge5410_defconfig:# CONFIG_HOTPLUG is not set
arch/sh/configs/shmin_defconfig:# CONFIG_HOTPLUG is not set
arch/um/defconfig:CONFIG_HOTPLUG=y
arch/unicore32/configs/unicore32_defconfig:CONFIG_HOTPLUG=y
arch/xtensa/configs/common_defconfig:# CONFIG_HOTPLUG is not set
arch/xtensa/configs/iss_defconfig:# CONFIG_HOTPLUG is not set
arch/xtensa/configs/s6105_defconfig:# CONFIG_HOTPLUG is not set
$

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2012-08-21 18:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <502E8115.90507@gmail.com>
     [not found] ` <CAErSpo7a77wAxrgZYfg_UdqLEtEf0wUxcbxTghnR7HbRsncKRQ@mail.gmail.com>
     [not found]   ` <20120817182931.GA27391@avionic-0098.adnet.avionic-design.de>
     [not found]     ` <CAErSpo6xhbpmd-rnLqKp9SuRQCp5a7jUzKhz0n6zGGLNHybWqA@mail.gmail.com>
     [not found]       ` <20120817200755.GA16021@avionic-0098.adnet.avionic-design.de>
     [not found]         ` <CAErSpo4XX7mQBmJfYWzmXCSDAt4BzZoJV6gU9__409K=fpvC6A@mail.gmail.com>
     [not found]           ` <20120817204839.GA2017@avionic-0098.mockup.avionic-design.de>
     [not found]             ` <20120817210718.GA14842@avionic-0098.mockup.avionic-design.de>
     [not found]               ` <CAErSpo7bwHNUchZHeJByxzhsc0uN7RJMLivBo5FuOJzA0Gz2Jg@mail.gmail.com>
     [not found]                 ` <20120817213247.GA1056@avionic-0098.mockup.avionic-design.de>
     [not found]                   ` <20120820053036.GA23166@kroah.com>
2012-08-21 14:32                     ` PCI Section mismatch error in linux-next Geert Uytterhoeven
2012-08-21 17:04                       ` Ralf Baechle
2012-08-21 17:04                         ` Ralf Baechle
2012-08-21 18:15                         ` Geert Uytterhoeven
2012-08-21 18:15                           ` Geert Uytterhoeven

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox