Re: [PATCH 0/4] __cpuinitconst and __devinitconst

From: Jan Beulich
Date: Mon Jan 14 2008 - 04:25:45 EST


>> The one thing that I'm not sure is really consistent yet wrt. the
>> constification is that now you need to write e.g.
>>
>> static const char __cpuinitcdata example[];
>>
>> and (accidentally) omitting the 'const' (as it's really an apparently
>> redundant thing now) as in
>>
>> static char __cpuinitcdata example[];
>>
>> will cause section type conflicts (at the compiler or linker level). I
>> therefore think that the 'const' should really be part of the
>> __{cpu,mem,dev}cdata definitions (requiring the attribute to be
>> placed properly, namely placement at the end of a declaration as
>> is possible with __{cpu,mem,dev}initdata is then not an option here).
>
>I need to play a little with this before I make up my mind.
>I do not like the concpet of hiding the const too much - it will
>be non-obvious why the compiler complains if the only thing that
>distingush const from non-const is a small capital 'c' within
>__cpucinitdata (versus __cpuinitdata).

That's the main reason I preferred __{cpu,mem,dev}initconst, as it
makes it more obvious that the declared thing is 'const'.

Jan

--
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/