[PATCH] Disable warning for leaked single step handling

From: Andi Kleen
Date: Mon Aug 22 2016 - 13:46:41 EST


From: Andi Kleen <ak@xxxxxxxxxxxxxxx>

When running the x86 selftests in qemu TCG the leaked single step
warning in traps.c triggers. It's probably an qemu emulation bug,
but for now it means this code needs to be kept and the warning
removed.

Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
---
arch/x86/kernel/traps.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/arch/x86/kernel/traps.c b/arch/x86/kernel/traps.c
index b70ca12dd389..ad999b550ba2 100644
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
@@ -693,12 +693,10 @@ dotraplinkage void do_debug(struct pt_regs *regs, long error_code)
goto exit;
}

- if (WARN_ON_ONCE((dr6 & DR_STEP) && !user_mode(regs))) {
+ if ((dr6 & DR_STEP) && !user_mode(regs)) {
/*
* Historical junk that used to handle SYSENTER single-stepping.
- * This should be unreachable now. If we survive for a while
- * without anyone hitting this warning, we'll turn this into
- * an oops.
+ * Still needed on qemu TCG.
*/
tsk->thread.debugreg6 &= ~DR_STEP;
set_tsk_thread_flag(tsk, TIF_SINGLESTEP);
--
2.5.5