]> xenbits.xensource.com Git - xen.git/commitdiff
x86: properly set up fbld emulation operand address
authorJan Beulich <jbeulich@suse.com>
Mon, 30 Sep 2013 12:24:25 +0000 (14:24 +0200)
committerJan Beulich <jbeulich@suse.com>
Mon, 30 Sep 2013 12:24:25 +0000 (14:24 +0200)
This is CVE-2013-4361 / XSA-66.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
master commit: 28b706efb6abb637fabfd74cde70a50935a5640b
master date: 2013-09-30 14:18:58 +0200

xen/arch/x86/x86_emulate/x86_emulate.c

index 8794b8219f36cd93ae663a8899ea1364c5fc47dd..e390c2a6ce91daa85c18db4a0997427a15569ae3 100644 (file)
@@ -3156,11 +3156,11 @@ x86_emulate(
                 break;
             case 4: /* fbld m80dec */
                 ea.bytes = 10;
-                dst = ea;
+                src = ea;
                 if ( (rc = ops->read(src.mem.seg, src.mem.off,
                                      &src.val, src.bytes, ctxt)) != 0 )
                     goto done;
-                emulate_fpu_insn_memdst("fbld", src.val);
+                emulate_fpu_insn_memsrc("fbld", src.val);
                 break;
             case 5: /* fild m64i */
                 ea.bytes = 8;