Messages in this thread | | | Date | Sat, 17 May 2008 23:48:25 +0200 | From | Mikael Pettersson <> | Subject | Re: [RFC] x86: merge nmi_32-64 to nmi.c |
| |
Maciej W. Rozycki writes: > On Sat, 17 May 2008, Tom Spink wrote: > > > static inline unsigned int get_nmi_count(int cpu) > > { > > #ifdef CONFIG_X86_64 > > return cpu_pda(cpu)->__nmi_count; > > #else > > return nmi_count(cpu); > > #endif > > } > > > > I know it introduces a lot of these conditionals, but at least there > > is one place to look for the get_nmi_count function, instead of > > searching for all variants of the function. > > Well, I suppose some header should provide a definition like: > > #ifdef CONFIG_X86_64 > #define cpu_x86_64 1 > #else > #define cpu_x86_64 0 > #endif > > and the you can remove the horrible #ifdef clutter and make the quoted > function look like: > > static inline unsigned int get_nmi_count(int cpu) > { > return cpu_x86_64 ? cpu_pda(cpu)->__nmi_count : nmi_count(cpu); > } > > Much better -- isn't it?
IMO, no, the #ifdef is preferable.
Why? Because the #ifdef is a very visible signal to the platform people that there are (in this case) subarch differences that force "clients" to behave differently on different subarchs. By removing the #ifdef you're IMO making it less likely for the platform people to take notice and work towards eliminating those differences.
| |