Re: [RFC] x86: merge nmi_32-64 to nmi.c

Andi Kleen
2008-05-18T18:14:04Z

Adrian Bunk wrote:
> On Sun, May 18, 2008 at 08:25:38AM +0100, Jeremy Fitzhardinge wrote:
>> Thomas Gleixner wrote:
>>> Definitely, but we should do it at the Kconfig level which allows us
>>> to have integer defines as well, so we end up with something like:
>>>
>>> static inline unsigned int get_nmi_count(int cpu)
>>> {
>>> return CONFIG_X86_64 ? cpu_pda(cpu)->__nmi_count : nmi_count(cpu);
>>> }
>>>
>> Unfortunately that doesn't work because when CONFIG_X86_64 isn't defined
>> it doesn't expand to 0. It would be nice if CONFIG_* expanded to 0/1,
>> but we'd need to change all the #ifdef CONFIG_* to #if CONFIG_*...
>
> Even more important:
> How do you want to handle kconfig variables set to "m"?
>
> Expand them to 0.5 ? ;-)

The whole idea was pretty bad. Ifdefs are not ugly because the syntax
looks ugly, but because it's a semantically ugly construct with bad
maintainability impact.

Trying to put syntactical sugar around that is a doomed exercise. It
will be still ugly, no matter what you do.

-Andi