diff options
| author | Peter Zijlstra <a.p.zijlstra@chello.nl> | 2010-03-25 09:51:51 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2010-03-26 06:33:57 -0400 |
| commit | ea8e61b7bbc4a2faef77db34eb2db2a2c2372ff6 (patch) | |
| tree | df2998225dc10245ce3d392576a724ab788e456c /arch/x86/include/asm/processor.h | |
| parent | faa4602e47690fb11221e00f9b9697c8dc0d4b19 (diff) | |
x86, ptrace: Fix block-step
Implement ptrace-block-step using TIF_BLOCKSTEP which will set
DEBUGCTLMSR_BTF when set for a task while preserving any other
DEBUGCTLMSR bits.
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <20100325135414.017536066@chello.nl>
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 | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h index 5bec21a66dc..32428b410b5 100644 --- a/arch/x86/include/asm/processor.h +++ b/arch/x86/include/asm/processor.h | |||
| @@ -799,7 +799,7 @@ extern void cpu_init(void); | |||
| 799 | 799 | ||
| 800 | static inline unsigned long get_debugctlmsr(void) | 800 | static inline unsigned long get_debugctlmsr(void) |
| 801 | { | 801 | { |
| 802 | unsigned long debugctlmsr = 0; | 802 | unsigned long debugctlmsr = 0; |
| 803 | 803 | ||
| 804 | #ifndef CONFIG_X86_DEBUGCTLMSR | 804 | #ifndef CONFIG_X86_DEBUGCTLMSR |
| 805 | if (boot_cpu_data.x86 < 6) | 805 | if (boot_cpu_data.x86 < 6) |
| @@ -807,7 +807,7 @@ static inline unsigned long get_debugctlmsr(void) | |||
| 807 | #endif | 807 | #endif |
| 808 | rdmsrl(MSR_IA32_DEBUGCTLMSR, debugctlmsr); | 808 | rdmsrl(MSR_IA32_DEBUGCTLMSR, debugctlmsr); |
| 809 | 809 | ||
| 810 | return debugctlmsr; | 810 | return debugctlmsr; |
| 811 | } | 811 | } |
| 812 | 812 | ||
| 813 | static inline void update_debugctlmsr(unsigned long debugctlmsr) | 813 | static inline void update_debugctlmsr(unsigned long debugctlmsr) |
