diff options
| author | Masami Hiramatsu <mhiramat@kernel.org> | 2019-09-06 22:13:59 +0900 |
|---|---|---|
| committer | Peter Zijlstra <peterz@infradead.org> | 2019-10-17 21:31:57 +0200 |
| commit | b3dc0695fa40c3b280230fb6fb7fb7a94ce28bf4 (patch) | |
| tree | 5d00bed3e29a8949d78a98c476163cf2b47a2f44 /arch/x86/include/asm/emulate_prefix.h | |
| parent | f7919fd943abf0c77aed4441ea9897a323d132f5 (diff) | |
| download | linux-next-b3dc0695fa40c3b280230fb6fb7fb7a94ce28bf4.tar.gz linux-next-b3dc0695fa40c3b280230fb6fb7fb7a94ce28bf4.zip | |
x86: xen: kvm: Gather the definition of emulate prefixes
Gather the emulate prefixes, which forcibly make the following
instruction emulated on virtualization, in one place.
Suggested-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Juergen Gross <jgross@suse.com>
Cc: x86@kernel.org
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: xen-devel@lists.xenproject.org
Cc: Randy Dunlap <rdunlap@infradead.org>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Link: https://lkml.kernel.org/r/156777563917.25081.7286628561790289995.stgit@devnote2
Diffstat (limited to 'arch/x86/include/asm/emulate_prefix.h')
| -rw-r--r-- | arch/x86/include/asm/emulate_prefix.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/x86/include/asm/emulate_prefix.h b/arch/x86/include/asm/emulate_prefix.h new file mode 100644 index 000000000000..70f5b98a5286 --- /dev/null +++ b/arch/x86/include/asm/emulate_prefix.h @@ -0,0 +1,14 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _ASM_X86_EMULATE_PREFIX_H +#define _ASM_X86_EMULATE_PREFIX_H + +/* + * Virt escape sequences to trigger instruction emulation; + * ideally these would decode to 'whole' instruction and not destroy + * the instruction stream; sadly this is not true for the 'kvm' one :/ + */ + +#define __XEN_EMULATE_PREFIX 0x0f,0x0b,0x78,0x65,0x6e /* ud2 ; .ascii "xen" */ +#define __KVM_EMULATE_PREFIX 0x0f,0x0b,0x6b,0x76,0x6d /* ud2 ; .ascii "kvm" */ + +#endif |
