From 53375be47c07c1aec7f97abaaea177b318f04e08 Mon Sep 17 00:00:00 2001
From: Alexandre Julliard <julliard@winehq.org>
Date: Tue, 18 Dec 2018 17:18:09 +0100
Subject: [PATCH] server: Reset hardware breakpoint sizes before setting them.

Workaround for kernel bug 200965.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
---
 server/ptrace.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/server/ptrace.c b/server/ptrace.c
index 808328ecbc2..6be1591d543 100644
--- a/server/ptrace.c
+++ b/server/ptrace.c
@@ -628,6 +628,9 @@ void set_thread_context( struct thread *thread, const context_t *context, unsign
 
     if (!suspend_for_ptrace( thread )) return;
 
+    /* force all breakpoint lengths to 1, workaround for kernel bug 200965 */
+    ptrace( PTRACE_POKEUSER, pid, DR_OFFSET(7), 0x11110055 );
+
     switch (context->cpu)
     {
     case CPU_x86:
-- 
GitLab