Re: [PATCH] Remove remaining references of CONFIG_GENERIC_TIME
From: Arnaud Lacombe
Date: Mon Aug 01 2011 - 13:14:45 EST
Hi,
On Mon, Aug 1, 2011 at 12:48 PM, Kyle Moffett <kyle@xxxxxxxxxxxxxxx> wrote:
> On Mon, Aug 1, 2011 at 12:08, Arnaud Lacombe <lacombar@xxxxxxxxx> wrote:
>> On Mon, Aug 1, 2011 at 11:15 AM, Kyle Moffett <kyle@xxxxxxxxxxxxxxx> wrote:
>>> On Mon, Aug 1, 2011 at 11:04, Arnaud Lacombe <lacombar@xxxxxxxxx> wrote:
>>>> On Mon, Aug 1, 2011 at 7:27 AM, Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> 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
>
--
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/