could you please one more cleanup and hide the CONFIG_X86_NUMAQ in the
header file, so that we can just call numaq_tsc_disable() without an
#ifdef?
also, that TSC quirk should probably be turned into an explicit quirk
function pointer initialized by the early-init NUMAQ code and left NULL
by everything else - like we it on visws. See include/asm-x86/setup.h:
/*
* Any setup quirks to be performed?
*/
extern int (*arch_time_init_quirk)(void);
extern int (*arch_pre_intr_init_quirk)(void);
extern int (*arch_intr_init_quirk)(void);
extern int (*arch_trap_init_quirk)(void);
extern char * (*arch_memory_setup_quirk)(void);
extern int (*mach_get_smp_config_quirk)(unsigned int early);
extern int (*mach_find_smp_config_quirk)(unsigned int reserve);
the goal is to offload all non-standard setup that is not a reasonable
deviation of some of the major vendors to such a quirk handler. Quirks
are a lot easier to maintain and a lot easier to think about - they can
be just by-line functionality to the main body of default behavior.
Ingo
--