diff options
author | Markus Metzger <markus.t.metzger@intel.com> | 2008-12-11 13:49:59 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-12-12 08:08:12 +0100 |
commit | c2724775ce57c98b8af9694857b941dc61056516 (patch) | |
tree | c3936699317da3233bc31e92d68cb582ec17d193 /arch/x86/include/asm/processor.h | |
parent | b0884e25fe361f2ca228808fb5fd1b74cb04e711 (diff) | |
download | linux-c2724775ce57c98b8af9694857b941dc61056516.tar.gz linux-c2724775ce57c98b8af9694857b941dc61056516.tar.bz2 linux-c2724775ce57c98b8af9694857b941dc61056516.zip |
x86, bts: provide in-kernel branch-trace interface
Impact: cleanup
Move the BTS bits from ptrace.c into ds.c.
Signed-off-by: Markus Metzger <markus.t.metzger@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/include/asm/processor.h')
-rw-r--r-- | arch/x86/include/asm/processor.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h index 5ca01e383269..aa5914f8e501 100644 --- a/arch/x86/include/asm/processor.h +++ b/arch/x86/include/asm/processor.h @@ -752,6 +752,19 @@ extern void switch_to_new_gdt(void); extern void cpu_init(void); extern void init_gdt(int cpu); +static inline unsigned long get_debugctlmsr(void) +{ + unsigned long debugctlmsr = 0; + +#ifndef CONFIG_X86_DEBUGCTLMSR + if (boot_cpu_data.x86 < 6) + return 0; +#endif + rdmsrl(MSR_IA32_DEBUGCTLMSR, debugctlmsr); + + return debugctlmsr; +} + static inline void update_debugctlmsr(unsigned long debugctlmsr) { #ifndef CONFIG_X86_DEBUGCTLMSR |