]> git.proxmox.com Git - mirror_qemu.git/commitdiff
target-i386: Ensure bit 10 on DR7 is never cleared
authorEduardo Habkost <ehabkost@redhat.com>
Thu, 8 Oct 2015 20:10:27 +0000 (17:10 -0300)
committerEduardo Habkost <ehabkost@redhat.com>
Fri, 23 Oct 2015 14:59:27 +0000 (12:59 -0200)
Bit 10 of DR7 is documented as always set to 1, so ensure that's
always the case.

Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
target-i386/bpt_helper.c

index 23ce828491e182445fe95db1dab61491c5394c22..49472ea85b0e69a1978c6cb50ceff1942e58ed05 100644 (file)
@@ -85,6 +85,8 @@ void cpu_x86_update_dr7(CPUX86State *env, uint32_t new_dr7)
     target_ulong old_dr7 = env->dr[7];
     int i;
 
+    new_dr7 |= DR7_FIXED_1;
+
     /* If nothing is changing except the global/local enable bits,
        then we can make the change more efficient.  */
     if (((old_dr7 ^ new_dr7) & ~0xff) == 0) {