Linux kbuild/kconfig development
 help / color / mirror / Atom feed
* Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
       [not found]     ` <20110801101410.GE15578@n2100.arm.linux.org.uk>
@ 2011-08-01 11:27       ` Geert Uytterhoeven
  2011-08-01 14:36         ` Uwe Kleine-König
  2011-08-01 15:04         ` Arnaud Lacombe
  0 siblings, 2 replies; 10+ messages in thread
From: Geert Uytterhoeven @ 2011-08-01 11:27 UTC (permalink / raw)
  To: Russell King - ARM Linux
  Cc: Zoltan Devai, linux-kernel, chris, linux-am33-list, trivial,
	user-mode-linux-devel, cmetcalf, linux-arm-kernel, linux-kbuild

On Mon, Aug 1, 2011 at 12:14, Russell King - ARM Linux
<linux@arm.linux.org.uk> wrote:
> On Mon, Aug 01, 2011 at 12:09:02PM +0200, Geert Uytterhoeven wrote:
>> On Mon, Aug 1, 2011 at 10:36, Russell King - ARM Linux
>> <linux@arm.linux.org.uk> wrote:
>> > On Sat, Jul 30, 2011 at 06:14:38PM +0200, Zoltan Devai wrote:
>> >> Commit 592913ecb87a9e06f98ddb55b298f1a66bf94c6b has killed off any
>> >> use of this config option long ago.
>> >
>> > I don't see the point of this - we were free of GENERIC_TIME on ARM
>> > shortly after it was originally killed off.  The problem is you can't
>> > stop people introducing new uses of this - because it existed once and
>> > there's nothing which errors out on its presence, people are going to
>> > continue submitting patches with it in.  And it's going to continue
>> > being missed at the review stage.
>> >
>> > I've a similar problem with folk on ARM including mach/gpio.h as their
>> > sole gpio header file rather than linux/gpio.h - I've been trying for
>> > the last 1-2 years to educate people to use linux/ in preference.  You
>> > can't do it, and I'm still just about the only one who picks up on that.
>> > (SoC maintainers don't care.)  They will end up caring when I push a
>> > change during the next merge window though, so I'll eventually stop
>> > mach/gpio.h being included.  (Instead, it'll be asm/gpio.h).
>> >
>> > GENERIC_TIME though... I don't think you'll ever stop new uses of it
>> > creeping in unless you can arrange for something to error out.
>>
>> Doesn't kconf error out when trying to select a non-existent symbol?
>
> Nope.

You're right. So that's a bug.

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] 10+ messages in thread

* Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
  2011-08-01 11:27       ` [PATCH] Remove remaining references of CONFIG_GENERIC_TIME Geert Uytterhoeven
@ 2011-08-01 14:36         ` Uwe Kleine-König
  2011-08-01 15:04         ` Arnaud Lacombe
  1 sibling, 0 replies; 10+ messages in thread
From: Uwe Kleine-König @ 2011-08-01 14:36 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Russell King - ARM Linux, chris, linux-am33-list, trivial,
	user-mode-linux-devel, linux-kbuild, linux-kernel, cmetcalf,
	linux-arm-kernel, Zoltan Devai

On Mon, Aug 01, 2011 at 01:27:52PM +0200, Geert Uytterhoeven wrote:
> On Mon, Aug 1, 2011 at 12:14, Russell King - ARM Linux
> <linux@arm.linux.org.uk> wrote:
> > On Mon, Aug 01, 2011 at 12:09:02PM +0200, Geert Uytterhoeven wrote:
> >> Doesn't kconf error out when trying to select a non-existent symbol?
> >
> > Nope.
> 
> You're right. So that's a bug.
Not sure, this might have been done on purpose to make cross-tree series
easier!?

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

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

* Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
  2011-08-01 11:27       ` [PATCH] Remove remaining references of CONFIG_GENERIC_TIME Geert Uytterhoeven
  2011-08-01 14:36         ` Uwe Kleine-König
@ 2011-08-01 15:04         ` Arnaud Lacombe
  2011-08-01 15:15           ` Kyle Moffett
  1 sibling, 1 reply; 10+ messages in thread
From: Arnaud Lacombe @ 2011-08-01 15:04 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Russell King - ARM Linux, Zoltan Devai, linux-kernel, chris,
	linux-am33-list, trivial, user-mode-linux-devel, cmetcalf,
	linux-arm-kernel, linux-kbuild

Hi,

On Mon, Aug 1, 2011 at 7:27 AM, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> On Mon, Aug 1, 2011 at 12:14, Russell King - ARM Linux
> <linux@arm.linux.org.uk> wrote:
>> On Mon, Aug 01, 2011 at 12:09:02PM +0200, Geert Uytterhoeven wrote:
>>> On Mon, Aug 1, 2011 at 10:36, Russell King - ARM Linux
>>> <linux@arm.linux.org.uk> wrote:
>>> > On Sat, Jul 30, 2011 at 06:14:38PM +0200, Zoltan Devai wrote:
>>> >> Commit 592913ecb87a9e06f98ddb55b298f1a66bf94c6b has killed off any
>>> >> use of this config option long ago.
>>> >
>>> > I don't see the point of this - we were free of GENERIC_TIME on ARM
>>> > shortly after it was originally killed off.  The problem is you can't
>>> > stop people introducing new uses of this - because it existed once and
>>> > there's nothing which errors out on its presence, people are going to
>>> > continue submitting patches with it in.  And it's going to continue
>>> > being missed at the review stage.
>>> >
>>> > I've a similar problem with folk on ARM including mach/gpio.h as their
>>> > sole gpio header file rather than linux/gpio.h - I've been trying for
>>> > the last 1-2 years to educate people to use linux/ in preference.  You
>>> > can't do it, and I'm still just about the only one who picks up on that.
>>> > (SoC maintainers don't care.)  They will end up caring when I push a
>>> > change during the next merge window though, so I'll eventually stop
>>> > mach/gpio.h being included.  (Instead, it'll be asm/gpio.h).
>>> >
>>> > GENERIC_TIME though... I don't think you'll ever stop new uses of it
>>> > creeping in unless you can arrange for something to error out.
>>>
>>> Doesn't kconf error out when trying to select a non-existent symbol?
>>
>> Nope.
>
> You're right. So that's a bug.
>
depends on what you are trying to achieve and what the problem is.

Internally kconfig will create a dummy symbol when it encounter a
missing symbol so that arch/arm/Kconfig can reference a symbol which
will be fully defined later on. I do not think you want to forward
decl all the symbol which can be used. That'd be a mess. That said, we
can come with a form of symbol deprecation that would error-out when
used.

 - Arnaud

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

* Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
  2011-08-01 15:04         ` Arnaud Lacombe
@ 2011-08-01 15:15           ` Kyle Moffett
  2011-08-01 16:08             ` Arnaud Lacombe
  0 siblings, 1 reply; 10+ messages in thread
From: Kyle Moffett @ 2011-08-01 15:15 UTC (permalink / raw)
  To: Arnaud Lacombe
  Cc: Geert Uytterhoeven, Russell King - ARM Linux, Zoltan Devai,
	linux-kernel, chris, linux-am33-list, trivial,
	user-mode-linux-devel, cmetcalf, linux-arm-kernel, linux-kbuild

On Mon, Aug 1, 2011 at 11:04, Arnaud Lacombe <lacombar@gmail.com> wrote:
> Hi,
>
> On Mon, Aug 1, 2011 at 7:27 AM, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>> On Mon, Aug 1, 2011 at 12:14, Russell King - ARM Linux
>> <linux@arm.linux.org.uk> wrote:
>>> On Mon, Aug 01, 2011 at 12:09:02PM +0200, Geert Uytterhoeven wrote:
>>>> On Mon, Aug 1, 2011 at 10:36, Russell King - ARM Linux
>>>> <linux@arm.linux.org.uk> wrote:
>>>> > On Sat, Jul 30, 2011 at 06:14:38PM +0200, Zoltan Devai wrote:
>>>> >> Commit 592913ecb87a9e06f98ddb55b298f1a66bf94c6b has killed off any
>>>> >> use of this config option long ago.
>>>> >
>>>> > I don't see the point of this - we were free of GENERIC_TIME on ARM
>>>> > shortly after it was originally killed off.  The problem is you can't
>>>> > stop people introducing new uses of this - because it existed once and
>>>> > there's nothing which errors out on its presence, people are going to
>>>> > continue submitting patches with it in.  And it's going to continue
>>>> > being missed at the review stage.
>>>> >
>>>> > I've a similar problem with folk on ARM including mach/gpio.h as their
>>>> > sole gpio header file rather than linux/gpio.h - I've been trying for
>>>> > the last 1-2 years to educate people to use linux/ in preference.  You
>>>> > can't do it, and I'm still just about the only one who picks up on that.
>>>> > (SoC maintainers don't care.)  They will end up caring when I push a
>>>> > change during the next merge window though, so I'll eventually stop
>>>> > mach/gpio.h being included.  (Instead, it'll be asm/gpio.h).
>>>> >
>>>> > GENERIC_TIME though... I don't think you'll ever stop new uses of it
>>>> > creeping in unless you can arrange for something to error out.
>>>>
>>>> Doesn't kconf error out when trying to select a non-existent symbol?
>>>
>>> Nope.
>>
>> You're right. So that's a bug.
>>
> depends on what you are trying to achieve and what the problem is.
>
> Internally kconfig will create a dummy symbol when it encounter a
> missing symbol so that arch/arm/Kconfig can reference a symbol which
> will be fully defined later on. I do not think you want to forward
> decl all the symbol which can be used. That'd be a mess. That said, we
> can come with a form of symbol deprecation that would error-out when
> used.

Would it be possible instead to make Kconfig go through all the symbols
after everything is processed and identify any remaining "dummy symbols"
which were not actually declared anywhere?

Right now if you typo a "select" statement you get no warnings that you
are selecting something that does not exist, which is probably a cause
of many kinds of errors beyond this particular one.

Cheers,
Kyle Moffett

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

* Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
  2011-08-01 15:15           ` Kyle Moffett
@ 2011-08-01 16:08             ` Arnaud Lacombe
  2011-08-01 16:40               ` Nicolas Pitre
                                 ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Arnaud Lacombe @ 2011-08-01 16:08 UTC (permalink / raw)
  To: Kyle Moffett
  Cc: Geert Uytterhoeven, Russell King - ARM Linux, Zoltan Devai,
	linux-kernel, chris, linux-am33-list, trivial,
	user-mode-linux-devel, cmetcalf, linux-arm-kernel, linux-kbuild

Hi,

On Mon, Aug 1, 2011 at 11:15 AM, Kyle Moffett <kyle@moffetthome.net> wrote:
> On Mon, Aug 1, 2011 at 11:04, Arnaud Lacombe <lacombar@gmail.com> wrote:
>> Hi,
>>
>> On Mon, Aug 1, 2011 at 7:27 AM, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>>> On Mon, Aug 1, 2011 at 12:14, Russell King - ARM Linux
>>>>>[...]
>>>>>
>>>>> Doesn't kconf error out when trying to select a non-existent symbol?
>>>>
>>>> Nope.
>>>
>>> You're right. So that's a bug.
>>>
>> depends on what you are trying to achieve and what the problem is.
>>
>> Internally kconfig will create a dummy symbol when it encounter a
>> missing symbol so that arch/arm/Kconfig can reference a symbol which
>> will be fully defined later on. I do not think you want to forward
>> decl all the symbol which can be used. That'd be a mess. That said, we
>> can come with a form of symbol deprecation that would error-out when
>> used.
>
> Would it be possible instead to make Kconfig go through all the symbols
> after everything is processed and identify any remaining "dummy symbols"
> which were not actually declared anywhere?
>
this is software, everything is possible.

> Right now if you typo a "select" statement you get no warnings that you
> are selecting something that does not exist, which is probably a cause
> of many kinds of errors beyond this particular one.
>
d'oh! ... I'm not sure we want that. Dummy symbol are heavily used
internally, a trivial implementation[0] triggered:

% make REGENERATE_PARSERS=y alldefconfig 2>&1 | grep 'defined without
type' | wc -l
817

Moreover, this approach is deemed to fail. The current symbol
namespace is tied to an arch, so whenever you do:

arch/arm/Kconfig:
config FOO
    bool

config BAZ
    bool

drivers/cpufreq/Kconfig
config BAR
    depends on ARM && FOO
    select BAZ

You will end up triggering the warning for every ARCH != ARM...

 - Arnaud

[0]: or rather a fix as we currently only do the check for symbol linked to menu

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

* Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
  2011-08-01 16:08             ` Arnaud Lacombe
@ 2011-08-01 16:40               ` Nicolas Pitre
  2011-08-01 17:20                 ` Arnaud Lacombe
  2011-08-01 16:48               ` Kyle Moffett
  2011-08-01 17:15               ` Arnaud Lacombe
  2 siblings, 1 reply; 10+ messages in thread
From: Nicolas Pitre @ 2011-08-01 16:40 UTC (permalink / raw)
  To: Arnaud Lacombe
  Cc: Kyle Moffett, Geert Uytterhoeven, Russell King - ARM Linux,
	Zoltan Devai, lkml, chris, linux-am33-list, trivial,
	user-mode-linux-devel, cmetcalf, linux-arm-kernel, linux-kbuild

On Mon, 1 Aug 2011, Arnaud Lacombe wrote:

> Moreover, this approach is deemed to fail. The current symbol
> namespace is tied to an arch, so whenever you do:
> 
> arch/arm/Kconfig:
> config FOO
>     bool
> 
> config BAZ
>     bool
> 
> drivers/cpufreq/Kconfig
> config BAR
>     depends on ARM && FOO
>     select BAZ
> 
> You will end up triggering the warning for every ARCH != ARM...

You can keep a state for those symbols with regard to their level of 
reference.  Surely if ARM isn't true, BAZ is not "actively" referenced 
in the end.


Nicolas

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

* Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
  2011-08-01 16:08             ` Arnaud Lacombe
  2011-08-01 16:40               ` Nicolas Pitre
@ 2011-08-01 16:48               ` Kyle Moffett
  2011-08-01 17:14                 ` Arnaud Lacombe
  2011-08-01 17:15               ` Arnaud Lacombe
  2 siblings, 1 reply; 10+ messages in thread
From: Kyle Moffett @ 2011-08-01 16:48 UTC (permalink / raw)
  To: Arnaud Lacombe
  Cc: Geert Uytterhoeven, Russell King - ARM Linux, Zoltan Devai,
	linux-kernel, chris, linux-am33-list, trivial,
	user-mode-linux-devel, cmetcalf, linux-arm-kernel, linux-kbuild

On Mon, Aug 1, 2011 at 12:08, Arnaud Lacombe <lacombar@gmail.com> wrote:
> On Mon, Aug 1, 2011 at 11:15 AM, Kyle Moffett <kyle@moffetthome.net> wrote:
>> On Mon, Aug 1, 2011 at 11:04, Arnaud Lacombe <lacombar@gmail.com> wrote:
>>> On Mon, Aug 1, 2011 at 7:27 AM, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>>>> On Mon, Aug 1, 2011 at 12:14, Russell King - ARM Linux
>>>>>>[...]
>>>>>>
>>>>>> Doesn't kconf error out when trying to select a non-existent symbol?
>>>>>
>>>>> Nope.
>>>>
>>>> You're right. So that's a bug.
>>>>
>>> depends on what you are trying to achieve and what the problem is.
>>>
>>> Internally kconfig will create a dummy symbol when it encounter a
>>> missing symbol so that arch/arm/Kconfig can reference a symbol which
>>> will be fully defined later on. I do not think you want to forward
>>> decl all the symbol which can be used. That'd be a mess. That said, we
>>> can come with a form of symbol deprecation that would error-out when
>>> used.
>>
>> Would it be possible instead to make Kconfig go through all the symbols
>> after everything is processed and identify any remaining "dummy symbols"
>> which were not actually declared anywhere?
>>
> this is software, everything is possible.
>
>> Right now if you typo a "select" statement you get no warnings that you
>> are selecting something that does not exist, which is probably a cause
>> of many kinds of errors beyond this particular one.
>>
> d'oh! ... I'm not sure we want that. Dummy symbol are heavily used
> internally, a trivial implementation[0] triggered:
>
> % make REGENERATE_PARSERS=y alldefconfig 2>&1 | grep 'defined without
> type' | wc -l
> 817
>
> Moreover, this approach is deemed to fail. The current symbol
> namespace is tied to an arch, so whenever you do:
>
> arch/arm/Kconfig:
> config FOO
>    bool
>
> config BAZ
>    bool
>
> drivers/cpufreq/Kconfig
> config BAR
>    depends on ARM && FOO
>    select BAZ
>
> You will end up triggering the warning for every ARCH != ARM...

Perhaps that's an argument for building a single Kconfig namespace?
At the very least, most of the architecture-generic warnings could be
worked around with trivial predeclarations in an "arch/Kconfig" file:

config ARM
        bool
[...]
config X86
        bool

There's probably technical issues that I'm missing that would make
that inordinately painful, but I can't see them right now... any ideas?

Cheers,
Kyle Moffett

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

* Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
  2011-08-01 16:48               ` Kyle Moffett
@ 2011-08-01 17:14                 ` Arnaud Lacombe
  0 siblings, 0 replies; 10+ messages in thread
From: Arnaud Lacombe @ 2011-08-01 17:14 UTC (permalink / raw)
  To: Kyle Moffett
  Cc: Geert Uytterhoeven, Russell King - ARM Linux, Zoltan Devai,
	linux-kernel, chris, linux-am33-list, trivial,
	user-mode-linux-devel, cmetcalf, linux-arm-kernel, linux-kbuild

Hi,

On Mon, Aug 1, 2011 at 12:48 PM, Kyle Moffett <kyle@moffetthome.net> wrote:
> On Mon, Aug 1, 2011 at 12:08, Arnaud Lacombe <lacombar@gmail.com> wrote:
>> On Mon, Aug 1, 2011 at 11:15 AM, Kyle Moffett <kyle@moffetthome.net> wrote:
>>> On Mon, Aug 1, 2011 at 11:04, Arnaud Lacombe <lacombar@gmail.com> wrote:
>>>> On Mon, Aug 1, 2011 at 7:27 AM, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>>>>> On Mon, Aug 1, 2011 at 12:14, Russell King - ARM Linux
>>>>>>>[...]
>>>>>>>
>>>>>>> Doesn't kconf error out when trying to select a non-existent symbol?
>>>>>>
>>>>>> Nope.
>>>>>
>>>>> You're right. So that's a bug.
>>>>>
>>>> depends on what you are trying to achieve and what the problem is.
>>>>
>>>> Internally kconfig will create a dummy symbol when it encounter a
>>>> missing symbol so that arch/arm/Kconfig can reference a symbol which
>>>> will be fully defined later on. I do not think you want to forward
>>>> decl all the symbol which can be used. That'd be a mess. That said, we
>>>> can come with a form of symbol deprecation that would error-out when
>>>> used.
>>>
>>> Would it be possible instead to make Kconfig go through all the symbols
>>> after everything is processed and identify any remaining "dummy symbols"
>>> which were not actually declared anywhere?
>>>
>> this is software, everything is possible.
>>
>>> Right now if you typo a "select" statement you get no warnings that you
>>> are selecting something that does not exist, which is probably a cause
>>> of many kinds of errors beyond this particular one.
>>>
>> d'oh! ... I'm not sure we want that. Dummy symbol are heavily used
>> internally, a trivial implementation[0] triggered:
>>
>> % make REGENERATE_PARSERS=y alldefconfig 2>&1 | grep 'defined without
>> type' | wc -l
>> 817
>>
>> Moreover, this approach is deemed to fail. The current symbol
>> namespace is tied to an arch, so whenever you do:
>>
>> arch/arm/Kconfig:
>> config FOO
>>    bool
>>
>> config BAZ
>>    bool
>>
>> drivers/cpufreq/Kconfig
>> config BAR
>>    depends on ARM && FOO
>>    select BAZ
>>
>> You will end up triggering the warning for every ARCH != ARM...
>
> Perhaps that's an argument for building a single Kconfig namespace?
I'm working on that, but this is a real mess :)

> At the very least, most of the architecture-generic warnings could be
> worked around with trivial predeclarations in an "arch/Kconfig" file:
>
> config ARM
>        bool
> [...]
> config X86
>        bool
>
> There's probably technical issues that I'm missing that would make
> that inordinately painful, but I can't see them right now... any ideas?
>
not I directly forsee.

 - Arnaud

> Cheers,
> Kyle Moffett
>

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

* Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
  2011-08-01 16:08             ` Arnaud Lacombe
  2011-08-01 16:40               ` Nicolas Pitre
  2011-08-01 16:48               ` Kyle Moffett
@ 2011-08-01 17:15               ` Arnaud Lacombe
  2 siblings, 0 replies; 10+ messages in thread
From: Arnaud Lacombe @ 2011-08-01 17:15 UTC (permalink / raw)
  To: Kyle Moffett
  Cc: Geert Uytterhoeven, Russell King - ARM Linux, Zoltan Devai,
	linux-kernel, chris, linux-am33-list, trivial,
	user-mode-linux-devel, cmetcalf, linux-arm-kernel, linux-kbuild

Hi,

On Mon, Aug 1, 2011 at 12:08 PM, Arnaud Lacombe <lacombar@gmail.com> wrote:
> Hi,
>
> On Mon, Aug 1, 2011 at 11:15 AM, Kyle Moffett <kyle@moffetthome.net> wrote:
>> On Mon, Aug 1, 2011 at 11:04, Arnaud Lacombe <lacombar@gmail.com> wrote:
>>> Hi,
>>>
>>> On Mon, Aug 1, 2011 at 7:27 AM, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>>>> On Mon, Aug 1, 2011 at 12:14, Russell King - ARM Linux
>>>>>>[...]
>>>>>>
>>>>>> Doesn't kconf error out when trying to select a non-existent symbol?
>>>>>
>>>>> Nope.
>>>>
>>>> You're right. So that's a bug.
>>>>
>>> depends on what you are trying to achieve and what the problem is.
>>>
>>> Internally kconfig will create a dummy symbol when it encounter a
>>> missing symbol so that arch/arm/Kconfig can reference a symbol which
>>> will be fully defined later on. I do not think you want to forward
>>> decl all the symbol which can be used. That'd be a mess. That said, we
>>> can come with a form of symbol deprecation that would error-out when
>>> used.
>>
>> Would it be possible instead to make Kconfig go through all the symbols
>> after everything is processed and identify any remaining "dummy symbols"
>> which were not actually declared anywhere?
>>
> this is software, everything is possible.
>
>> Right now if you typo a "select" statement you get no warnings that you
>> are selecting something that does not exist, which is probably a cause
>> of many kinds of errors beyond this particular one.
>>
> d'oh! ... I'm not sure we want that. Dummy symbol are heavily used
> internally, a trivial implementation[0] triggered:
>
> % make REGENERATE_PARSERS=y alldefconfig 2>&1 | grep 'defined without
> type' | wc -l
> 817
>
> Moreover, this approach is deemed to fail. The current symbol
> namespace is tied to an arch, so whenever you do:
>
> arch/arm/Kconfig:
> config FOO
>    bool
>
> config BAZ
>    bool
>
> drivers/cpufreq/Kconfig
> config BAR
>    depends on ARM && FOO
>    select BAZ
>
> You will end up triggering the warning for every ARCH != ARM...
>
Ok, I restricted the tagging to selected symbol, and we definitively
have this pattern occurring. It shall be fixed when/if we ends up
having a global configuration namespace.

I think I can work a patch.

 - Arnaud

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

* Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
  2011-08-01 16:40               ` Nicolas Pitre
@ 2011-08-01 17:20                 ` Arnaud Lacombe
  0 siblings, 0 replies; 10+ messages in thread
From: Arnaud Lacombe @ 2011-08-01 17:20 UTC (permalink / raw)
  To: Nicolas Pitre
  Cc: Kyle Moffett, Geert Uytterhoeven, Russell King - ARM Linux,
	Zoltan Devai, lkml, chris, linux-am33-list, trivial,
	user-mode-linux-devel, cmetcalf, linux-arm-kernel, linux-kbuild

Hi,

On Mon, Aug 1, 2011 at 12:40 PM, Nicolas Pitre <nico@fluxnic.net> wrote:
> On Mon, 1 Aug 2011, Arnaud Lacombe wrote:
>
>> Moreover, this approach is deemed to fail. The current symbol
>> namespace is tied to an arch, so whenever you do:
>>
>> arch/arm/Kconfig:
>> config FOO
>>     bool
>>
>> config BAZ
>>     bool
>>
>> drivers/cpufreq/Kconfig
>> config BAR
>>     depends on ARM && FOO
>>     select BAZ
>>
>> You will end up triggering the warning for every ARCH != ARM...
>
> You can keep a state for those symbols with regard to their level of
> reference.  Surely if ARM isn't true, BAZ is not "actively" referenced
> in the end.
>
he :) we enter in compilers optimizations. As much as I agree with
you, that might not be trivial to implement given the internal,
ad-hoc, structure of kconfig. All of that would be useless if we had a
single global namespace.

 - Arnaud

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

end of thread, other threads:[~2011-08-01 17:20 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1312042478-26012-1-git-send-email-zdevai@gmail.com>
     [not found] ` <20110801083614.GC15578@n2100.arm.linux.org.uk>
     [not found]   ` <CAMuHMdUpTDSRP_JmWqcCBtYwzna0hwmaBshpiF8kgvqoNcqYZA@mail.gmail.com>
     [not found]     ` <20110801101410.GE15578@n2100.arm.linux.org.uk>
2011-08-01 11:27       ` [PATCH] Remove remaining references of CONFIG_GENERIC_TIME Geert Uytterhoeven
2011-08-01 14:36         ` Uwe Kleine-König
2011-08-01 15:04         ` Arnaud Lacombe
2011-08-01 15:15           ` Kyle Moffett
2011-08-01 16:08             ` Arnaud Lacombe
2011-08-01 16:40               ` Nicolas Pitre
2011-08-01 17:20                 ` Arnaud Lacombe
2011-08-01 16:48               ` Kyle Moffett
2011-08-01 17:14                 ` Arnaud Lacombe
2011-08-01 17:15               ` Arnaud Lacombe

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