diff options
author | Harvey Harrison <harvey.harrison@gmail.com> | 2008-01-30 13:33:12 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-01-30 13:33:12 +0100 |
commit | f13bd3e7935f7020f7c622bf3f8cae8eee757a53 (patch) | |
tree | 5930ec49601600b9eff35ca440a40b5a7320d357 | |
parent | e8c10ef9dde3ab7b7d7db6804859d9daf38f01c4 (diff) | |
download | op-kernel-dev-f13bd3e7935f7020f7c622bf3f8cae8eee757a53.zip op-kernel-dev-f13bd3e7935f7020f7c622bf3f8cae8eee757a53.tar.gz |
x86: use wrmsrl in kprobes.c, step.c
Where x86_32 passed zero in the high 32 bits, use wrmsrl which
will zero extend for us. This allows ifdefs for 32/64 bit to
be eliminated.
Eliminate ifdef in step.c. Similar cleanup was done when unifying
kprobes_32|64.c and wrmsr() was chosen there over wrmsrl(). This
patch changes these to wrmsrl.
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r-- | arch/x86/kernel/kprobes.c | 4 | ||||
-rw-r--r-- | arch/x86/kernel/step.c | 4 |
2 files changed, 2 insertions, 6 deletions
diff --git a/arch/x86/kernel/kprobes.c b/arch/x86/kernel/kprobes.c index 93aff49..edc0a8e 100644 --- a/arch/x86/kernel/kprobes.c +++ b/arch/x86/kernel/kprobes.c @@ -410,13 +410,13 @@ static void __kprobes set_current_kprobe(struct kprobe *p, struct pt_regs *regs, static void __kprobes clear_btf(void) { if (test_thread_flag(TIF_DEBUGCTLMSR)) - wrmsr(MSR_IA32_DEBUGCTLMSR, 0, 0); + wrmsrl(MSR_IA32_DEBUGCTLMSR, 0); } static void __kprobes restore_btf(void) { if (test_thread_flag(TIF_DEBUGCTLMSR)) - wrmsr(MSR_IA32_DEBUGCTLMSR, current->thread.debugctlmsr, 0); + wrmsrl(MSR_IA32_DEBUGCTLMSR, current->thread.debugctlmsr); } static void __kprobes prepare_singlestep(struct kprobe *p, struct pt_regs *regs) diff --git a/arch/x86/kernel/step.c b/arch/x86/kernel/step.c index 5884dd4..b801e76 100644 --- a/arch/x86/kernel/step.c +++ b/arch/x86/kernel/step.c @@ -229,11 +229,7 @@ static void write_debugctlmsr(struct task_struct *child, unsigned long val) if (child != current) return; -#ifdef CONFIG_X86_64 wrmsrl(MSR_IA32_DEBUGCTLMSR, val); -#else - wrmsr(MSR_IA32_DEBUGCTLMSR, val, 0); -#endif } /* |