Re: [PATCH] x86: fix numaq_tsc_disable calling

From: Ingo Molnar
Date: Sun Jul 13 2008 - 02:26:01 EST



* Yinghai Lu <yhlu.kernel@xxxxxxxxx> wrote:

> if (cpu_has_bts)
> ptrace_bts_init_intel(c);
> +
> +#ifdef CONFIG_X86_NUMAQ
> + numaq_tsc_disable();
> +#endif

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