]> xenbits.xensource.com Git - xen.git/commit
x86emul: fix pushing of selector registers
authorJan Beulich <jbeulich@suse.com>
Fri, 14 Oct 2016 12:09:16 +0000 (14:09 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 14 Oct 2016 12:09:16 +0000 (14:09 +0200)
commit373923ed9c2ed36925f574387db2be2ebe5ce45a
tree3c039278566ba5ff83c133f45086d7f5ec53580a
parent9d3118a4d5a6fbd9f578853ec81621501caad63d
x86emul: fix pushing of selector registers

Both explicit PUSH and far CALL currently push unrelated data (the
segment attributes word) in the high half (attributes and limit in the
64-bit case in the high 48 bits) instead of zero. To avoid having to
apply this and further changes in multiple places, also fold the two
(respectively) far call/jmp instances into one.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/x86_emulate/x86_emulate.c